当前位置: 首页 > 面试题库 >

Ajax对PHP的调用未返回任何内容

谭正谊
2023-03-14
问题内容

我正在尝试使我的第一个ajax示例在我的MAMP上运行。我的ajax.html看起来像:

<html>
<head>
<script src='ajax.js'></script>
</head>
<body onload = 'ajax()'>
<div id='test'></div>
</body>
</html>

我的ajax.js看起来像:

函数ajax()
{
>> var xmlhttp;   
如果(window.XMLHttpRequest)
  {// IE7 +,Firefox,Chrome,Opera,Safari的代码
  xmlhttp = new XMLHttpRequest();
  }
其他
  {// IE6,IE5的代码

  xmlhttp = new ActiveXObject(“ Microsoft.XMLHTTP”);
  }
xmlhttp.open(“ GET”,“ http:// localhost:8888 / ajax.php”,true);
xmlhttp.send();
xmlhttp.onreadystatechange = function()
  {
  如果(xmlhttp.readyState == 4 && xmlhttp.status == 200)
    {
    document.getElementById(“ test”)。innerHTML = xmlhttp.responseText;
    }
  }
}

我的ajax.php看起来像:

回声“你好世界”;

我从萤火虫中检测到响应标头:

响应标头
连接Keep-Alive
内容长度11
Content-Type text / html
日期2012年11月5日星期一18:57:46 GMT
Keep-Alive超时= 5,最大值= 99
服务器Apache / 2.2.22(Unix)mod_ssl / 2.2 .22 OpenSSL / 0.9.8r DAV / 2 PHP /
5.4.4
X-Pad避免浏览器错误
X-Powered-By PHP / 5.4.4


但响应文本中没有任何变化,我的html中也没有任何变化。

有人可以帮我吗?

谢谢!


问题答案:

您的问题是您正在尝试进行跨域请求。由于相同的来源策略,浏览器会阻止它。

标准解决方案是在PHP中设置CORS标头以允许这些请求。

例如 :

<?php
header("Access-Control-Allow-Origin: *");
?>


 类似资料:
  • 我检测到来自Firebug的响应标头: 响应标头 连接保持活动 内容长度11 内容类型文本/html 日期周一,2012年11月5日18:57:46 GMT 保持活动时间=5,max=99 服务器端/2.2.22(Unix)MOD_SSL/2.2.22 OpenSSL/0.9.8R DAV/2 PHP/5.4.4 X-Pad避免浏览器错误 X-Powered-由PHP/5.4.4 但是没有响应文本

  • 问题内容: 我一直在用这个把头砸在砖墙上,我已经尝试了很多关于stackoverflow的解决方案,但是找不到一个可行的解决方案! 基本上,当我发布我的AJAX时,PHP返回JSON,但AJAX显示的是Undefined而不是值: JS : PHP的 : firebug的JSON结果 : AJAX将JSON结果显示为Undefined,我不知道为什么。我尝试显示添加和。我也曾尝试将其更改为and

  • 问题内容: 我想我在这里遗漏了一些东西: 使用AjAX,我从数据库中获取了一些数据,并以JSON格式将其发送回去。$ jsondata = array(); 到目前为止,我认为没有问题。 在回教士方面,我将以上内容接收回 如果我这样做 我看到了我希望看到的内容,即警报中的整个阵列。 一切出错的地方就是尝试访问响应。我得到的错误是“ categoriesObject”不是对象- 如果不是,它是什么?

  • 问题内容: 例如我有一个功能: 我怎样才能返回AJAX后得到的? 问题答案: 因为请求是异步的,所以您无法返回ajax请求的结果(而同步ajax请求是一个 糟糕的 主意)。 最好的选择是将自己的回调传递给f1 然后,您将像这样致电:

  • 问题内容: 我是WordPress设计师,我为自己的主题之一开发了联系表格,该主题已通过jQuery验证。 请检查下面的代码,然后阅读下面的注释。 笔记: sendEmail.php是使用PHPmailer类发送电子邮件的正确脚本。 templatePath变量具有如下所示的完整模板路径的值:http : //somedomain.com/wp-content/themes/themename 上

  • 问题内容: 基本上我想做的是返回mysql查询的结果。我知道如何将查询结果的每一行放入其自己的JSON对象中,现在我正在努力寻找一种方法,以便在有多行结果将其返回给我的jquery时使用。在我的jquery中,我调用了$ .ajax()函数,对此我没有任何问题。我的问题在于成功部分,我希望能够执行以下操作: 我希望能够像JSON对象数组一样遍历结果变量。结果变量是一个字符串,由php文件的所有输出