Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Ajax调用将不起作用_Php_Ajax - Fatal编程技术网

Php Ajax调用将不起作用

Php Ajax调用将不起作用,php,ajax,Php,Ajax,我有一个方法,我想使用ajax运行一个php文件,然后重新加载页面 function winA() { var x = "<?php echo $id;?>" $.ajax({ url: 'w.php5' , data: { id: x }, success: function(data) { window.location.reload() } }); } 函数winA

我有一个方法,我想使用ajax运行一个php文件,然后重新加载页面

function winA() 
{
var x = "<?php echo $id;?>"
$.ajax({ url: 'w.php5' ,
         data: { id: x },
         success: function(data) {
                   window.location.reload()
                }
 }); 
}
函数winA()
{
var x=“”
$.ajax({url:'w.php5',
数据:{id:x},
成功:功能(数据){
window.location.reload()
}
}); 
}
这就是我所拥有的,我已经无数次地查看它的缺陷,确保php变量正确读取,并确保函数真正被调用。当调用w.php5?id=1时,php文件可以正常工作

为什么这个ajax调用不起作用


提前感谢您的帮助,Aaron。

您缺少一个分号:

var x = "<?php echo $id;?>"
var x=“”
应该是:

var x = "<?php echo $id;?>";
var x=”“;
//设置方法

投递或获取

type:'GET'; or type:"POST"

有两种选择

如果您想发布其他数据,请使用此

.ajax({
  type: 'POST',
  url:'w.php5',
  data: {id: '<?php echo $id; ?>'},
  success: function(resp){
    console.log(resp);
  },
  dataType:'json'
});
.ajax({
  type: 'GET',
  url:'w.php5?id=<?php echo $id; ?>',
  success: function(resp){
    console.log(resp);
  },
  dataType:'json'
});
.ajax({
键入:“POST”,
url:'w.php5',
数据:{id:'},
成功:功能(resp){
控制台日志(resp);
},
数据类型:'json'
});
如果这样做,您的ID将存储在$\u POST数组=>*$\u POST['ID']*

如果您只想通过发布的ID获取一些数据,请使用此

.ajax({
  type: 'POST',
  url:'w.php5',
  data: {id: '<?php echo $id; ?>'},
  success: function(resp){
    console.log(resp);
  },
  dataType:'json'
});
.ajax({
  type: 'GET',
  url:'w.php5?id=<?php echo $id; ?>',
  success: function(resp){
    console.log(resp);
  },
  dataType:'json'
});
.ajax({
键入:“GET”,
url:'w.php5?id=',
成功:功能(resp){
控制台日志(resp);
},
数据类型:'json'
});
如果这样做,您的ID将存储在$\u GET array=>*$\u GET['ID']*

函数winA()中
function winA() 
{
var x = "<?php echo $id;?>"
$.ajax({ url: 'w.php5' ,
         data: { id: x },
         success: function(data) {
                   window.location.reload()
                }
         error:function (xhr, ajaxOptions, thrownError)
         { 
             alert(xhr.status); 
             alert(thrownError); 
         }
 }); 
}
{ var x=“” $.ajax({url:'w.php5', 数据:{id:x}, 成功:功能(数据){ window.location.reload() } 错误:函数(xhr、ajaxOptions、thrownError) { 警报(xhr.状态); 警报(thrownError); } }); }
这样,它将在出现ajax错误时显示警报


另外,如果在chrome中,按开发人员工具的组合Ctrl+Shift+I,并检查网络选项卡以查看是否调用了w.php5,以及响应是什么。不知道其他浏览器的工具,但应该有类似的东西,url可能缺少一个前导正斜杠,假设您试图访问像www.myurl.com/w.php?id=5这样的url

试一试

如果这不起作用,您需要使用Chrome或Firefox中的开发工具检查请求


您还可以在w.php中var_转储$\u GET或$\u POST,因为响应将公开输出。

如何调用
winA()
?单击图片:“width=“250”name='right'onClick=“winA();“/>将错误回调添加到ajax调用中,如果使用开发人员工具进行调试,是否启动了succes函数?指向w.php5的路径是否正常?这是使用firebug或chrome开发人员工具的地方。将此添加到ajax调用中:
error:function(xhr,ajaxOptions,thrownError){alert(xhr.status);警报(thrownError);}
并告诉我们它是否被调用以及结果是什么右键单击您的页面,单击查看页面源代码,您是否看到php实际响应了
var x
?默认类型为get anyways,但我会试一试,您能告诉我如何使用上面的代码准确设置格式吗?添加行
类型:'POST',
(或get)在
data:{id:x}行之后,
so?这段代码有什么问题吗?谁否决了它…如果您执行$id=$\u GET['id'],请使用第二个代码示例。该示例使用GET方法“post”“您在AJAX Calli中请求的php文件的ID在使用AJAX之前需要加载什么?因为我的ajax请求似乎从来没有通过过,所以你需要在ajax调用前加$吗?我不建议在这个阶段使用
datatype:'json'
,如果php响应不是json编码的,实际上可能会出现同样的问题-例如,如果他的配置允许在页面上显示错误和警告,并且在phptry中有一些警告,在“成功”回调函数之后添加此项。。。错误:函数(a,b){console.log(a);console.log(b);}如果AJAX调用失败,这将显示任何错误消息。还有一个问题。。。PHP脚本的输出是什么?我的意思是,例如,当您访问w.php?id=1时。此脚本向浏览器输出了什么?应该有fome echo语句,例如。。。