阿贾克斯赢得了't将数据发送到PHP
Ajax won't send data to PHP
SOLVED:这里发布的代码是正确的,但连接到数据库的一些PHP代码需要修复,我现在可以工作了。我在评论中使用了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>
当单击按钮时,我会得到"datasaved:array data
"消息,但php代码没有运行。为什么不起作用?
EDIT:我设置了data: {selectedImageArray: selectedImageArray}
而不是data: selectedImageArray
,因为我被告知它会将其转换为JSON格式,对吗?
您正在数据库中添加一个数组而不是字符串,请尝试使用:
$sql->bindParam(':itemlist', json_encode($array));
当你得到数据时,只需运行:
$array = json_decode($itemlist);
首先查看浏览器调试器,了解真正发送到php文件的内容。第二件事:你将向它发送JSON。这意味着,你有一个POST表单数组,如下所示:
[{
"key1": "value1",
"key2": "value2"
}]
因此,总之,这是行不通的:
$array = $_POST['selectedImageArray'];
您需要直接访问例如$_POST['key1']
。
您可以添加内容类型JSON。另一方面,它将被视为文本。
var data = JSON.stringify({selectedImageArray: selectedImageArray});
$.ajax({
method: "POST",
dataType: 'json', // If your response is JSON
contentType: "application/json",
url: "submit.php",
data: data
}).done(function( msg ) {
alert( "Data Saved: " + selectedImageArray );
include ('submit.php');
});
相关文章:
- PHP:显示sqlite数据库中的html格式数据,使用tinymce保存
- 巨大的数据和PHP错误
- 在php中提交数据时,如果某些值为null,而某些值为非null,如何进行查询
- json-ajax动画防止通过php发送数据
- Jquery:对返回JSON数据的php脚本的Ajax调用
- 在php和mysql中选择选项.一旦选择了选项,就列出我的sql数据库数据
- 如何在没有ajax的情况下将javascript动态数据发送到php变量
- 将数据保存到数据库(ajax/php)后,使文本字段变灰/禁用
- 为什么数据没有从ajax传递到php
- 如何将JavaScript变量的数据传递到另一个php页面
- 使用外部ajax数据PHP绘制图表
- IE不发送发布数据PHP&jQuery
- 如何将数据 php 更改为 javascript json
- 如何插入数据 PHP JavaScript MySQL 与多个数组
- 将数据PHP(客户端)传递给C#(服务器端)
- 跨会话保存数据- php
- 从AJAX调用操作数据:PHP或Javascript
- 如何在jQuery中获取数据- PHP中的多重标签选择
- Ajax显示动态数据php在html下拉
- 使用azax &获取数据;php