使用ajax从php检索数据
我有一个ajax代码,它将数据传递到php,然后从php检索数据使用ajax从php检索数据,php,mysql,json,jquery,Php,Mysql,Json,Jquery,我有一个ajax代码,它将数据传递到php,然后从php检索数据 function updateDatabase(syncData){ $.ajax({ type : 'POST', async: false, url : 'php/syncData.php', dataType : 'json', data: {myData : syncData}, //i even
function updateDatabase(syncData){
$.ajax({
type : 'POST',
async: false,
url : 'php/syncData.php',
dataType : 'json',
data: {myData : syncData}, //i even used this "mydata"+syncData
success : function(result){
res = result;
},
error : function() {
res = false;
}
});
return res;
}
这是我的php代码
<?php
include("database.php");
if(isset($_GET['myData'])){
$data = $_GET['myData'];
$insert = "INSERT INTO `mydata` VALUES (NULL,'$data')";
mysql_query($insert);
$data = mysql_insert_id();
echo json_encode($data);
}
?>
下面是传递/调用ajax的javascript函数
<script>
var theData = "blahblah";
var alertData = updateDatabase(theData);
alert(alertData);
</script>
问题是,当我使用htmt/text作为数据类型时,它会警告空/空输出,但当我使用json作为数据类型时,它会警告false,我得出结论,它进入了错误函数,但没有成功。。。有人知道这样做的正确方法吗?或者我只是错过了什么?谢谢 好的,您使用jQuery发布数据,但是您在PHP中寻找$\u GET值。把它修好,看看有没有什么变化 编辑:它应该如下所示:
...
if(isset($_POST['myData'])){
$data = $_POST['myData'];
...
好的,您使用jQuery发布数据,但是您在PHP中寻找$\u GET值。把它修好,看看有没有什么变化 编辑:它应该如下所示:
...
if(isset($_POST['myData'])){
$data = $_POST['myData'];
...
尝试在PHP文件中设置内容类型:
header( 'Content-Type: application/json' );
然后回显您的数据:
echo json_encode( $data );
然后退出脚本:
exit;
希望有帮助 尝试在PHP文件中设置内容类型:
header( 'Content-Type: application/json' );
然后回显您的数据:
echo json_encode( $data );
然后退出脚本:
exit;
希望有帮助 您看过使用firebug的ajax响应了吗?您看过使用firebug的ajax响应了吗?