Php 为什么在我打了ajax电话之后,这篇文章一片空白?
我有一个ajax调用:Php 为什么在我打了ajax电话之后,这篇文章一片空白?,php,jquery,ajax,post,redirect,Php,Jquery,Ajax,Post,Redirect,我有一个ajax调用: function change(x){ var id=x; alert(id); $.ajax({ url: "http://localhost/kidsKnitsDB/edit.php", type: "post", data: JSON.stringify(id), beforeSend: function(response){alert('Sending');},
function change(x){
var id=x;
alert(id);
$.ajax({
url: "http://localhost/kidsKnitsDB/edit.php",
type: "post",
data: JSON.stringify(id),
beforeSend: function(response){alert('Sending');},
success: function(response){ alert('success');},
error: function(response){alert('failed');},
complete: function(response){window.location="http://localhost/kidsKnitsDB/edit.php";},
});
}
从以下位置获取数据:
<?php for($r=0; $r<count($result); $r++){?>
<tr>
<?php for($c=0; $c<9; $c++){?>
<td><?php echo $result[$r][$c];?></td>
<?php }?>
<td><button name="edit<?php echo $r;?>" onclick="change(<?php echo $result[$r][0];?>)">edit</button></td>
</tr>
<?php }?>
警惕();
编辑
销售价格
成本
目录
出售
形象
积极的
然而,$id是空的,我相信这是因为ajax调用的缘故,但我不确定。如果有人能帮忙,那就太好了 第一个问题
您只是发送了一个数字,而不是一个对象,因此php代码不知道您将其称为id 改变
function change(x){
var id=x;
到
第二个问题
使用这段代码:
complete: function(response){window.location="http://localhost/kidsKnitsDB/edit.php";}
在ajax调用完成后执行重定向
情况就是这样:
[Sun Jan 26 19:08:29 2014] Array\n(\n [id] => 2\n)\n
[Sun Jan 26 19:08:30 2014] Array\n(\n)\n
我认为AJAX调用使它比本例中需要的更复杂。链接到http://localhost/kidsKnitsDB/edit.php?id=x
其中x是数字。然后还应该在php代码中将$\u POST更改为$\u GET
如果您仍然想使用AJAX,那么应该将从请求中得到的响应插入页面的某个位置,而不是像现在这样进行重定向 您只是发送了一个数字,而不是一个对象,因此php代码不知道您将其称为id。将其转换为
数据:{'id':id}
是否有效?可能,请参阅我的答案。为什么要在完成时进行重定向?到同一编辑页。。。你将不会得到一个id…因为它不会重定向,否则出于某种原因,我想这是一个问题,但我不知道为什么没有它它它不会重定向。不,它仍然是空的,虽然我觉得你是对的,但问题仍然存在。在处理帖子的php代码中,请执行error\u log(print\r($\u post,true))编码>并检查错误日志以了解您得到了哪些变量(或重写javascript查询以便查看结果并打印结果),这是错误日志显示的内容[Sun Jan 26 19:08:29 2014][error][client 127.0.0.1]Array\n(\n[id]=>2\n)\n,请参考:http://localhost/kidsKnitsDB/index.php [Sun Jan 26 19:08:30 2014][错误][client 127.0.0.1]PHP注意:第13行/var/www/kidsKnitsDB/edit.PHP中的未定义索引:id,参考:http://localhost/kidsKnitsDB/index.php [Sun Jan 26 19:08:30 2014][error][client 127.0.0.1]阵列\n(\n)\n,推荐人:http://localhost/kidsKnitsDB/index.php
@ChristianGrabowski更新了我的答案,并回答了您的第二个问题。@ChristianGrabowski没问题,这就是本网站的全部内容:)谢谢您接受我的答案。你知道你也可以投票吗?
complete: function(response){window.location="http://localhost/kidsKnitsDB/edit.php";}
[Sun Jan 26 19:08:29 2014] Array\n(\n [id] => 2\n)\n
[Sun Jan 26 19:08:30 2014] Array\n(\n)\n