// by redice 2009.7.7
学习一种新技术的最快捷的方法是什么?通过一个实际项目来学习它。
问题一:Ajax采用Post方式提交数据,但在php程序中无法获取到。
苦苦查询终于找到了解决方案,在xmlHttp.open后一定要设置“Content-Type”包头,如下:
xmlHttp.setRequestHeader(Content-Type, application/x-www-form-urlencoded);
问题二:Ajax返回数据为乱码。
解决方案:
(1):GB2312的页面,在使用Ajax传递中文数据时,数据会出现乱码。
此时在处理页面头部加上指定编码的语句,就可以正常发送了。
php
header(Content-type: text/html;charset=GB2312);
如果是asp:
Response.AddHeader "Charset","GB2312"
(2):GB2312的页面,向ajax发送中文数据时,数据先用JS的escape转换一下。
如果是UTF8页面,需要用encodeURIComponent来转换。
问题三:Ajax提交中文数据,php程序在服务器端获取到乱码。
解决方案
Ajxa采用UTF-8编码方式发生数据。对于中文要现在js中进行URL编码(使用encodeURI函数),
在php程序中要先对获取到的数据进行URL解码(使用urldecode函数),然后对数据从UTF-8转换为gb2312(我项目中网
页编码采用的是gb2312)。
例如:$myparam=iconv("UTF-8","GB2312",urldecode($_REQUEST[param]));
php自学笔记-php与Ajax交换数据疑难问题解决
[日志分享]
[日志信息]
该日志于 2009-07-07 19:00 由 redice 发表在 redice's Blog ,你除了可以发表评论外,还可以转载 “php自学笔记-php与Ajax交换数据疑难问题解决” 日志到你的网站或博客,但是请保留源地址及作者信息,谢谢!! (尊重他人劳动,你我共同努力)
呵呵,谢谢
VaTG790i.最好的<a href=http://www.kyfei.com>网站推广软件</a>,
非常好
....................
;ui;普i;uighur;ui;ui;个
在unix网络编程中看到了关于TCP/IP的一些内容,我感觉还是写的不够。正在下载中,一定
下载地址呢