免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 11782 | 回复: 15
打印 上一主题 下一主题

[PHP ajax]请问php怎么返回ajax提交过来的数据? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-07-17 12:31 |只看该作者 |倒序浏览
由ajax发送过来的数据(GET和POST),PHP是不是也是用$_GET和$_POST来接收数据的?
还有就是怎么把处理完后的结果返回给ajax???我找了很多ajax教程,都只有客户端部分的代码,如:
<script language="JavaScript" type="text/javascript">
<!--
var xmlHttp = false;

if (@_jscript_version >= 5)
try {
  xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
  try {
    xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
  } catch (e2) {
    xmlHttp = false;
  }
}

if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {
  xmlHttp = new XMLHttpRequest();
}


function callServer() {

  var city = document.getElementById("city").value;
  var state = document.getElementById("state").value;
  if ((city == null) || (city == "")) return;
  if ((state == null) || (state == "")) return;
  var url = "/getZipCode.php?city=" + escape(city) + "&state=" + escape(state);
  xmlHttp.open("GET", url, true);
  xmlHttp.onreadystatechange = updatePage;
  xmlHttp.send(null);
}
function updatePage() {
  if (xmlHttp.readyState == 4) {
    var response = xmlHttp.responseText;
    document.getElementById("zipCode").value = response;
  }
}
//-->
</script>
<form>
<p>City: <input type="text" name="city" id="city" size="25"
       onChange="callServer();" /></p>
<p>State: <input type="text" name="state" id="state" size="25"
       onChange="callServer();" /></p>
<p>Zip Code: <input type="text" name="zipCode" id="city" size="5" /></p>
</form>

论坛徽章:
0
2 [报告]
发表于 2006-07-17 14:22 |只看该作者
汗。。没人理我。。不过不要紧了。。我试出来了!!

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
3 [报告]
发表于 2006-07-17 18:09 |只看该作者
XMLHTTP传输的xml格式的数据。

论坛徽章:
0
4 [报告]
发表于 2006-07-17 19:02 |只看该作者
xmlHttp.open("GET", url, true);

第一个参数就是决定提交方式,跟form的method一样,你平常FORM的提交给PHP怎么接收,AJAX的也一样.

怎么返回?一般AJAX的核心教程就是这个了吧,还说看了很多??那还真是白看了

[ 本帖最后由 crazysoul 于 2006-7-17 19:04 编辑 ]

论坛徽章:
0
5 [报告]
发表于 2006-07-17 20:46 |只看该作者
原帖由 PHP小帅 于 2006-7-17 12:31 发表
由ajax发送过来的数据(GET和POST),PHP是不是也是用$_GET和$_POST来接收数据的?
还有就是怎么把处理完后的?我找了很多ajax教程,都只有客户端部分的代码,如:

你这句“结果返回给ajax??”问的就很有问题,ajax不是一个独立的个体,数据处理完也不是要返回给它。还是要好好理解服务器和网页表现的交互过程啊。

论坛徽章:
0
6 [报告]
发表于 2006-07-17 21:37 |只看该作者
xmlHttp.onreadystatechange = updatePage;就是这句
在 updatePage中响应服务器返回
php直接echo

论坛徽章:
0
7 [报告]
发表于 2006-07-18 09:59 |只看该作者
原帖由 HonestQiao 于 2006-7-17 18:09 发表
XMLHTTP传输的xml格式的数据。

呵,这个我没注意到哦。谢谢提醒。。那接受普通文本时,应该怎么创建XMLHttpRequest 对象??
而且奇怪的是。我用XMLHTTP创建后。运行正常啊。。

[ 本帖最后由 PHP小帅 于 2006-7-18 10:23 编辑 ]

论坛徽章:
0
8 [报告]
发表于 2006-07-18 10:06 |只看该作者
原帖由 crazysoul 于 2006-7-17 19:02 发表
xmlHttp.open("GET", url, true);

第一个参数就是决定提交方式,跟form的method一样,你平常FORM的提交给PHP怎么接收,AJAX的也一样.

怎么返回?一般AJAX的核心教程就是这个了吧,还说看了很多??那还真 ...

AJAX的核心教程都只写客户端部分,并没写出服务器部分的代码。因为我知道服务器可以用ASP、PHP、JSP任何一种语言来写。。。倒霉的是:
1。我找到的教程都是ASP和JSP的服务器代码。懒得去看(也看不怎么懂)。。
2。当我用PHP的echo "drgergergre";客户端那边却怎么也接收不到。试了好久还是接收不到。于是就发楞了。。本来敢确定的事(PHP照样通过$_GET和$_POST来获取提交过来的数据)也开始怀疑了。。所以上来发帖询问。。。

论坛徽章:
0
9 [报告]
发表于 2006-07-18 10:16 |只看该作者
原帖由 ilcj 于 2006-7-17 21:37 发表
xmlHttp.onreadystatechange = updatePage;就是这句
在 updatePage中响应服务器返回
php直接echo

这个就是我昨天在发完帖后又去试了好久才试出来的。。

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
10 [报告]
发表于 2006-07-18 10:19 |只看该作者
http://www.xmlhttp.cn/

XmlHttp是什么?
最通用的定义为:XmlHttp是一套可以在Javascript、VbScript、Jscript等脚本语言中通过http协议传送或从接收XML及其他数据的一套API。XmlHttp最大的用处是可以更新网页的部分内容而不需要刷新整个页面。
来自MSDN的解释:XmlHttp提供客户端同http服务器通讯的协议。客户端可以通过XmlHttp对象(MSXML2.XMLHTTP.3.0)向http服务器发送请求并使用微软XML文档对象模型Microsoft&reg; XML Document Object Model (DOM)处理回应。


但是web服务器自己会接受和解析xml的请求,一样可以提交数据get和post的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP