PHP网站制作之Jquery下Ajax与PHP数据互换
学会了生成静态网页,现在你应该接触一下XML了,恩,XML也了解了,那么AJAX你也得接触接触吧?AJAX完了....然后...1、前台传送字符串变量,背景前往字符串变量(非json格局)
Javascript代码:
这里,为懂得决Ajax数据传送呈现的汉字乱码,在字符串传送之前,利用javascript函数escape()对汉字字符串举行了编码,而且对前往
的字符串利用unescape()函数举行解码,使得汉字得以一般显现。固然了,背景PHP代码也增加了头文件,以包管汉字字符串不会呈现乱码。各类背景代码办理
汉字乱码成绩的体例以下:
PHP:header(Content-Type:text/html;charset=GB2312);
$(function(){varmy_data="前台变量";my_data=escape(my_data)+"";//编码,避免汉字乱码$.ajax({url:"ajax_php.php",type:"POST",data:{trans_data:my_data},//dataType:"json",error:function(){alert(ErrorloadingXMLdocument);},success:function(data,status){//假如挪用php乐成alert(unescape(data));//解码,显现汉字}});}); PHP代码:
<?phpheader(Content-Type:text/html;charset=gb2312);//利用gb2312编码,使中文不会酿成乱码$backValue=$_POST;echo$backValue."+背景前往";?>显现效果以下图所示:
2、前台传送多个一维数组,背景前往字符串变量(非json格局)
Javascript代码:
在非json格局下,背景只能前往字符串,假如想背景前往数组,能够接纳json格局,在本文的前面会具体先容。
$(function(){varmy_data=newArray();varmy_data1=newArray();my_data=0;my_data=1;my_data=2;my_data1=10;my_data1=11;my_data1=12;$.ajax({url:"ajax_php.php",type:"POST",data:{trans_data:my_data,trans_data1:my_data1},//dataType:"json",error:function(){alert(ErrorloadingXMLdocument);},success:function(data,status){//假如挪用php乐成alert(data);}});}); PHP代码:
<?phpheader(Content-Type:text/html;charset=gb2312);//利用gb2312编码,使中文不会酿成乱码//读取第一个数组$backValue="trans_data:";$trans=$_POST;foreach($transas$value){$backValue=$backValue."".$value;}//读取第二个数组$backValue=$backValue.",trans_data1:";$trans=$_POST;foreach($transas$value){$backValue=$backValue."".$value;}echo$backValue;?>显现效果以下图:
3、前台传送多个一维数组,背景前往二维数组(json格局)
Javascript代码:
$(function(){varmy_data=newArray();varmy_data1=newArray();my_data=0;my_data=1;my_data=2;my_data1=10;my_data1=11;my_data1=12;$.ajax({url:"ajax_php.php",type:"POST",data:{trans_data:my_data,trans_data1:my_data1},dataType:"json",error:function(){alert(ErrorloadingXMLdocument);},success:function(data){//假如挪用php乐成varback="";for(vari=0;i<(data.length);i++){for(varj=0;j<data.length;j++){back+=""+i+"行"+j+"列:"+data+"";}back+="
";}alert(back);}});}); PHP代码:
<?phpheader(Content-Type:text/html;charset=gb2312);//利用gb2312编码,使中文不会酿成乱码$backValue=array();$backValue=$_POST;$backValue=$_POST;echojson_encode($backValue);?>显现效果以下图:
4、前台传送一维数组和二维数组,背景前往二维数组(json格局)
Javascript代码:
$(function(){varmy_data=newArray();varmy_data1=newArray();varmy_data2=newArray();my_data=0;my_data=1;my_data=2;my_data1=10;my_data1=11;my_data1=12;my_data2=my_data;my_data2=my_data1;$.ajax({url:"ajax_php.php",type:"POST",data:{trans_data:my_data,trans_data1:my_data1,trans_data2:my_data2},dataType:"json",error:function(){alert(ErrorloadingXMLdocument);},success:function(data){//假如挪用php乐成varback="";for(vari=0;i<(data.length);i++){for(varj=0;j<data.length;j++){back+=""+i+"行"+j+"列:"+data+"";}back+="
";}alert(back);}});}); PHP代码:
<?phpheader(Content-Type:text/html;charset=gb2312);//利用gb2312编码,使中文不会酿成乱码$backValue=array();$backValue=$_POST;$backValue=$_POST;$backValue=$_POST;echojson_encode($backValue);?>显现效果以下图:
虽说不上很好,但至少一般的数据操作,再在原有的SQL语言的基础上,用得还是可以的。 个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。 我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。 有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。 建议加几个专业的phper的群,当然啦需要说话的人多,一处一点问题能有人回答你的,当然啦要让人回答你的问题,平时就得躲在里面聊天,大家混熟啦,愿意回答你问题的人自然就多啦。 使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。 为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。 刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。 当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标,
页:
[1]