js与php的交互问题

 时间:2024-11-15 05:52:38

php与js的交互问题一直是一个非常重要的问题,在很多时候都会用到,而且,使用这种技术还可以带来更好的用户体验。小编今天就来讲一下如何进行php与js交互。

工具/原料

jquery

简单介绍AJAX

1、小编的交互方法是jQuery的$.ajax()。所谓ajax,就是AsynchronousJavascriptAndXML,也就是我们常说的js与XML异步技术。通过在后台与服务器进行少量数据交换,ajax可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。这样可以给用户更好的体验,如果你的网页比较大的情况下,可以先加载一部分,再加载剩下的,这样等到用户点击下面的东西时,已经加载好了,这样可以大大提高你的页面打开速度!比如,百度图片的显示就是用了ajax。先加载一部分图片,用户往下拖网页时,底下的图片已经加载好了!

js与php的交互问题

2、ajax的作用是在后台与服务器进行少量的数据交换,那么,我们就可以将js的参数传递给php,然后让php操作数据库,再返回给js值,不管是js向php传参,还是php向js传参,都可以通过ajax实现!

$.AJAX()的使用

1、当然,$.ajax()方法的参数非常多,如果想要了解更深一些,自行百度。小编在这里只讲一些js与php传参用到的参数。附几张参数介绍图。这个不重要,我们来看一下传参时用的参数。

js与php的交互问题

js与php的交互问题

js与php的交互问题

js与php的交互问题

js与php的交互问题

2、如图这就是所有用到的参数了。js的代码跗柿椁焚如下:---------------------------------------------幻腾寂埒-----------------------------------varjson;//这个变量是为了得到ajax返回的参数,如果你不需要php返回参数,那就不需要这些东西。$.ajax({ cache:false,async:false,//注意:这里设置为flase,即同步操作,因为我们不需要异步操作,只是传参而已,当然,你也可以设置成异步。 contentType:"application/x-www-form-urlencoded;charset=utf-8",//这个要写对,和你的页面照应,你的页面是gb2312就填gb2312,我这里是utf8,否则中文传参会出错。url:"../include/Mysql.php",//这里填上你的php操作页面,即接受js参数的php页面。type:"POST",//这里和php照应,这里填POST,php中就要用$_POST[]接受! traditional:true,//序列化数据data:{"jsdata":id},//传过去的参数,我传过去一个id,接受时php这样写:$data=$_POST["jsdata"];变量名称当然可以更改。error:function(){//出错处理,一般加上,但其实传参没什么出错。alert('请求超时');},success:function(data)//成功后的函数,注意,这里接受php返回的参数 {//注意!!由于传参时会进行base64加密,所以你穿过去的参数和返回的参数都会很长,如果我们不用json的话,参数就会丢失一部分,因为传递有长度限制!所以我们不得不涉及到一个麻烦的东西json数组! vara=data; varss; ss=eval("("+a+")");//eval()可以执行字符串中的js代码!ffa(ss);//这是一个函数,用来得到传回来的参数。 }});varss=this.json;//得到ajax返回的参数functionffa(ss)//得到当前ajax回执的data,保存在json里。{this.json=ss;}--------------------------------------------------------------------------------

js与php的交互问题

js与php的交互问题

js与php的交互问题

js与php的交互问题

js与php的交互问题

3、以上代码显示了js-->php--->js的过程,如果你只需要js-->php--->mysql,那么就不需要json了。

4、php页面的代码如下-------颍骈城茇-------------------------------------------------------------------------<患修校楷?phpif($_POST['jsdata'])//这里的名字要和js里写的一样。{ selecta($link);//执行函数,这个函数是自定义的。。 }functionselecta($link){/*你的操作数据库的命令。。。。。。。。。。。。。。这里有一个很重要的东西,就是你返回的数据需要放到json数组里json的写法不在详细介绍,样例是一维数组写法。*/$a['data']=$rows['t_name'];//$rows['t_name']是数据库的数据。这样就有了一个json数组$a,它的键data中有值。echojson_encode($a);//这句非常重要,这是php-->js的方式,如果不需要,就不用写。}?>--------------------------------------------------------------------------------

js与php的交互问题

5、js获得json数组后,取出操作如下:vari=ss['data'];//data是php中数组的键,只有对应好键,才能取出相应的值。json数组虽然麻烦,但是十分强大!你还可以试试多维的json数组储存数据。

前端编程-用浏览器自带的取色功能快速拾取颜色 css怎样让div的背景居中 JS的值怎么传递给PHP 如何用PHP往MySQL中插入数据 jquery如何通过name属性来获取到id值?
热门搜索
兔子品种介绍及图片 日本邪恶电影 钢琴师电影 玩教具制作图片 董维嘉图片