PHP教程之办理ajax猎取页面间接显现乱码的办法
总的来说,在这一个月左右的时间中,学到的不少,但是也遇到不少的问题,比如批量图片的上传,一直到现在也不懂,如何实现动态的增加上传图片的数量。人人都晓得,xmlhttp在通讯时接纳的是utf编码,而国际良多网页的信息都是接纳gbk编码,以是当间接经由过程ajax往毗连网页,并将猎取到的信息间接显现的话就会呈现乱码的征象,有些时分没法改动服务器端网页的编码(比方猎取其余网站的天色预告信息),在这类时分就只能在客户端经由过程js做编码的事情了.上面这段js就是用于将服务器端前往的gbk编码字符串转换为utf编码字符串:
functiongb2utf8(data){
varglbEncode=[];
gb2utf8_data=data;
execScript("gb2utf8_data=MidB(gb2utf8_data,1)","VBScript");
vart=escape(gb2utf8_data).replace(/%u/g,"").replace(/(.{2})(.{2})/g,"%$2%$1").replace(/%(.)%(.{2})/g,"@$1$2");
t=t.split("@");
vari=0,j=t.length,k;
while(++i<j){
k=t.substring(0,4);
if(!glbEncode){
gb2utf8_char=eval("0x"+k);
execScript("gb2utf8_char=Chr(gb2utf8_char)","VBScript");
glbEncode=escape(gb2utf8_char).substring(1,6);
}
t=glbEncode+t.substring(4);
}
gb2utf8_data=gb2utf8_char=null;
returnunescape(t.join("%")); }
有了这段代码后,就能够间接对前往的网页内容举行编码了:
varresponse=gb2utf8(response.responseBody);
经由如许的转码后所取得的页面内容就不会有乱码征象了;
固然,假如服务器端页面接纳的是utf-8的编码那就基本不必要举行编码事情了。
不懂的问题有很多高手帮你解决。但不要认为你是新手,就不能帮助别人,比如今天你学会了怎样安装PHP,明天还可能有朋友会问这个问题,你就可以给他解答,不要认为这是浪费时间,忙别人其实就是帮助自己。 对于初学者来说不推荐去拿钱买的。当然如果一个网站你经常去用,而且里面的资料也比较有用,最好还是买个会员比较好,毕竟那些也是别人的工作成果。 建议加几个专业的phper的群,当然啦需要说话的人多,一处一点问题能有人回答你的,当然啦要让人回答你的问题,平时就得躲在里面聊天,大家混熟啦,愿意回答你问题的人自然就多啦。 学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql 首先声明:我是一个菜鸟,是一个初学者。学习了一段php后总是感觉自己没有提高,无奈。经过反思我认为我学习过程中存在很多问题,我改变了学习方法后自我感觉有了明显的进步。 有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。 说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。 个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。 再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。 实践是检验自己会不会的真理。
页:
[1]