【发布时间】:2015-06-22 12:34:40
【问题描述】:
已解决:此处发布的代码是正确的,但是连接到数据库的一些 PHP 代码需要修复,我现在可以正常工作了。我在 cmets 中使用了 Quentin 的建议来解决我的问题。
我正在尝试通过 ajax 将数组的 JSON 发送到 PHP 文件,然后运行 php 文件。这是我的 ajax:
$('#submit').click(function() {
$.ajax({
method: "POST",
url: "submit.php",
data: {selectedImageArray: selectedImageArray}
}).done(function( msg ) {
alert( "Data Saved: " + selectedImageArray );
});
});
在我的 PHP 文件中,我连接到一个数据库,然后有这个:
$array = $_POST['selectedImageArray'];
$sql = $dbh->prepare("INSERT INTO pending_trades (steam_id, trade_items, is_giving, is_receiving, has_started) VALUES (:steamid, :itemlist, '1', '0', '0')");
$sql->bindParam(':steamid', $steamprofile['steamid']);
$sql->bindParam(':itemlist', $array);
$sql->execute();
我希望它将“selectedImageArray”json 发送到 php 并在按下此按钮时使用它运行 msql 查询:
<button id="submit" class="button1" >Submit<span></span></button>
单击按钮时,我收到“数据已保存:array data”消息,但未运行 php 代码。为什么这不起作用?
编辑:我设置了data: {selectedImageArray: selectedImageArray} 而不是data: selectedImageArray,因为有人告诉我它会变成 JSON 格式,对吗?
【问题讨论】:
-
$steamprofile['steamid']来自哪里?删除include() -
我以前从未在 JavaScript 中见过
include()...无论如何,这具体在哪里失败?当你调试 PHP 代码时,会发生什么? -
@SulthanAllaudeen,他们为什么需要同步请求?这里不需要它,它会锁定 UI 直到它完成。
-
@SulthanAllaudeen,即使数据是图像数据(这需要
data是 FormData 对象),使请求同步也不会影响它。 -
如何判断 PHP 代码没有运行?这到底是什么意思?开发人员工具的“网络”选项卡是否不显示正在发出的请求?它是否超时而不是得到响应?它是否得到响应但显示 PHP 源代码?
if语句的错误分支会运行吗?
标签: javascript php jquery mysql ajax