久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

thinkphp中使用ajax方法嗎

thinkphp中使用ajax方法;thinkphp使用ajax和PHP使用ajax的方法一樣,不同點(diǎn)在于PHP的ajax中的url指向了一個(gè)頁面,而thinkphp里面的url需要指向一個(gè)操作方法,可以利用ajax返回指定的數(shù)據(jù),返回?cái)?shù)據(jù)類型的修改等。

thinkphp中使用ajax方法嗎

本文操作環(huán)境:Windows10系統(tǒng)、ThinkPHP5版、Dell G3電腦。

thinkphp中使用ajax方法嗎

thinkphp中使用ajax方法

thinkphp使用ajax和之前使用ajax的方法一樣,不同點(diǎn)在于之前的ajax中的url指向了一個(gè)頁面,而thinkphp里面的url需要指向一個(gè)操作方法。

一、thinkphp使用ajax返回?cái)?shù)據(jù)

1.先在AdminControllerMainController.class.php里面寫一個(gè)方法 

public function testajax()//ajax測試方法     {         $this->show();     }

2.在AdminViewMain文件夾里面建對(duì)應(yīng)的顯示頁面testajax.html

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script src="__PUBLIC__/js/jquery-1.11.2.min.js"></script><!--jquery文件放在public/js里面。__PUBLIC__找到public目錄--> <title>無標(biāo)題文檔</title> </head> <body>     <select id="nation"></select> </body> <script type="text/javascript">         $.ajax({             url:"__CONTROLLER__/ajaxchuli",//這里指向的就不再是頁面了,而是一個(gè)方法。             data:{},             type:"POST",             dataType:"JSON",             success: function(data){                 //alert(data[0].code);//這里要用索引,使用eq讀取不出來數(shù)據(jù)。                 var str="";                 for(a in data)                 {                     str = str+"<option value='"+data[a].code+"'>"+data[a].name+"</option>";                 }                 $("#nation").html(str);             }         }) </script>

3.在AdminControllerMainController.class.php里面寫ajax處理的方法

public function ajaxchuli()     {         $n = D("Nation");//造一個(gè)nation表的模型對(duì)象         $attr = $n->select();                  $this->ajaxReturn($attr);//ajax返回?cái)?shù)據(jù)的方式,用ajaxReturn。     }

4.這樣就把數(shù)據(jù)顯示在了頁面

二、ajax返回?cái)?shù)據(jù)類型的修改

在thinkphp中ajax默認(rèn)的是返回JSON數(shù)據(jù),可以通過配置DEFAULT_AJAX_RETURN進(jìn)行設(shè)置,設(shè)置方式如下

// 指定XML格式返回?cái)?shù)據(jù) $data['status'] = 1; $data['content'] = 'content'; $this->ajaxReturn($data,'xml');

如果是XML方式,會(huì)自動(dòng)編碼成XML字符串,如果是EVAL方式的話,只會(huì)輸出字符串data數(shù)據(jù)。

示例:

public function ajaxchuli() { $this->ajaxReturn("hello","eval");//將返回?cái)?shù)據(jù)的類型更改成字符串 }

同時(shí)也要講ajax里面的數(shù)據(jù)類型改為TEXT

<script type="text/javascript">         $.ajax({             url:"__CONTROLLER__/ajaxchuli",//這里指向的就不再是頁面了,而是一個(gè)方法。             data:{},             type:"POST",             dataType:"TEXT",             success: function(data){                 alert(data);//輸出結(jié)果就是hello             }         }) </script>

三、用ajax和create(自動(dòng)收集表單)向數(shù)據(jù)庫中添加數(shù)據(jù)

1.先寫訪問的方法

public function addajax()     {         $this->show();     }

2.寫訪問的頁面

<body> <div>代號(hào):<input type="tel" id="code" /></div> <div>名稱:<input type="tel" id="name" /></div> <div><input type="button" id="btn" value="添加" /></div> </body> <script type="text/javascript"> $("#btn").click(function(){         var code = $("#code").val();         var name = $("#name").val();         $.ajax({                 url:"__CONTROLLER__/addchuli",                 data:{Code:code,Name:name},//要用create方法,這里的列名就要和數(shù)據(jù)庫中的列名一樣,這里的首字母要大寫。                 type:"POST",                 dataType:"TEXT",                 success: function(data){                     alert(data);                 }             })     }) </script>

3.寫ajax處理的方法

public function addchuli()     {         $n = D("Nation");         $n->create();//自動(dòng)收集表單         $r = $n->add();//調(diào)用添加的方法         if($r)         {             $this->ajaxReturn("OK","eval");//如果添加成功輸出“OK”,eval代表數(shù)據(jù)類型為字符串。         }         else         {             $this->ajaxReturn("NO","eval");//如果添加失敗,就輸出”NO“。         }     }

四、thinkphp中用ajax做分頁。主要注意第三方類怎么引用。

1.先做一個(gè)方法xianshi();

public function xianshi()     {         $n = D("chinastates");//造chinastates表的對(duì)象         $shuliang = $n->count();//取出數(shù)據(jù)的總條數(shù)         $page = new HomelibsPage($shuliang,15);//將page文件類引入。()里面需要參數(shù),第一個(gè)參數(shù)是數(shù)據(jù)的總數(shù)量,第二個(gè)是每頁顯示多少條數(shù)據(jù)。所以上面要先求出數(shù)量。                  $xinxi = $page->fpage();                          $attr = $n->limit($page->limit)->select();//查詢出所有數(shù)據(jù),limit(0,15),需要修改Page.class.php文件中的第57行$this->limit = "LIMIT ".$this->setLimit();,將 "LIMIT ".去掉,如果不去掉的話,將會(huì)顯示limit(limit(0,15)),度了1個(gè)limit。         $this->assign("shuju",$attr);//將查詢出的數(shù)據(jù)都注入顯示頁面         $this->assign("xinxi",$xinxi);         $this->show();//調(diào)用顯示方法在顯示頁面顯示。     }

2.做顯示頁面

<body> <table width="100%" border="1" cellpadding="0" cellspacing="0">     <tr>         <td>代號(hào)</td>         <td>名稱</td>         <td>父級(jí)代號(hào)</td>     </tr>     <foreach name="shuju" item="v" >      <tr>         <td>{$v.areacode}</td>         <td>{$v.areaname}</td>         <td>{$v.parentareacode}</td>     </tr>     </foreach> </table> <div>{$xinxi}</div><!--顯示分頁信息--> </body>

3.Page.class.php需要更改的地方

(1)文件名原來為page.class.php需要改為Page.class.php,要和類名保持一致;

(2)把Page.class.php復(fù)制到thinkphpApplicationHomelibs里面;

(3)namespace Homelibs;加上命名空間。

(4)修改Page.class.php文件中的第57行$this->limit = "LIMIT ".$this->setLimit();,將 "LIMIT ".去掉;

五、輸出字符串的長度

1.封裝的方法寫在同一個(gè)控制器里面

public function test()     {         $str = "volist標(biāo)簽通常用于查詢數(shù)據(jù)集(select方法)的結(jié)果輸出,通常模型的select方法返回的結(jié)果是一個(gè)二維數(shù)組,可以直接使用volist標(biāo)簽進(jìn)行輸出。在控制器中首先對(duì)模版賦值:";//給str一個(gè)字符串         $m = A("Main");//造一個(gè)Main控制器的對(duì)象         echo $m->ChangDu($str);//輸出$str的長度     }          public function ChangDu($str)//ChangDu方法,輸出字符串的長度。     {         return strlen($str);     }

2.封裝的方法不在同一個(gè)控制器里面

(1)在Maincontroller.class.php里面只寫下面的方法

public function test()     {         $str = "volist標(biāo)簽通常用于查詢數(shù)據(jù)集(select方法)的結(jié)果輸出,通常模型的select方法返回的結(jié)果是一個(gè)二維數(shù)組,可以直接使用volist標(biāo)簽進(jìn)行輸出。在控制器中首先對(duì)模版賦值:";//給str一個(gè)字符串         $m = A("Main");//造一個(gè)Main控制器的對(duì)象         echo ChangDu($str);//輸出$str的長度     }

(2)在thinkphpApplicationHome里面寫封裝的方法functions.php,內(nèi)容如下

<?php function ChangDu($str) {     return strlen($str); } ?>

(3)這樣寫完以后在瀏覽器中輸入http://localhost/thinkphp/index.php/Home/Main/test讀取不到字符串的長度,還需要在配置文件里面加上一句代碼:

"LOAD_EXT_FILE"=>"functions",//自動(dòng)加載函數(shù)庫類

家還是那個(gè)這句代碼后才能讀取到字符串的長度。

六、自動(dòng)判斷session是否存在

1.session的用途

(1)用來存用戶名等信息;

(2)防止跳過登錄;

2.如果按照以前的方式,在每個(gè)頁面或者方法里面都要判斷session是否存在。

(1)造一個(gè)Fucontroller類,用來判斷session是否存在。

<?php namespace HomeController; use ThinkController; class FuController extends Controller//造一個(gè)FuController類,用來判斷session值是否存在。 {     public function __construct()//造一個(gè)構(gòu)造函數(shù)     {         if(session('?uid'))//判斷session是否存在,如果存在,什么也不做。         {                      }         else//如果不存在         {             //$url = U("Home/Login/login");             $this->redirect("Home/Login/login",array(),5,'請(qǐng)登錄');//第一個(gè)參數(shù)是跳轉(zhuǎn)的地址,第二個(gè)參數(shù)是要傳的值,第三個(gè)參數(shù)是跳轉(zhuǎn)的時(shí)間,第四個(gè)參數(shù)是跳轉(zhuǎn)時(shí)的提示信息。             exit;         }     } } ?>

(2)寫一個(gè)test方法,注意繼承的父類是FuController,而不是Controller。第一次走這個(gè)頁面時(shí)會(huì)跳轉(zhuǎn)到login方法里面,因?yàn)闆]有session值,會(huì)執(zhí)行上面的$this->redirect("Home/Login/login",array(),5,'請(qǐng)登錄');

<?php namespace HomeController; use HomeControllerFuController;// class MainController extends FuController//這里繼承的父類更改為FuController {     public function test()     {         $str = "volist標(biāo)簽通常用于查詢數(shù)據(jù)集(select方法)的結(jié)果輸出,通常模型的select方法返回的結(jié)果是一個(gè)二維數(shù)組,可以直接使用volist標(biāo)簽進(jìn)行輸出。在控制器中首先對(duì)模版賦值:";//給str一個(gè)字符串         $m = A("Main");//造一個(gè)Main控制器的對(duì)象         echo ChangDu($str);//輸出$str的長度     } } ?>

(3)寫一個(gè)login方法。上面的test方法跳轉(zhuǎn)到login方法以后會(huì)存上session,再走test方法就會(huì)出現(xiàn)字符串的長度,因?yàn)橛辛藄esion值,test方法會(huì)繼續(xù)往下執(zhí)行。

<?php namespace HomeController; use ThinkController; class LoginController extends Controller {     public function login()     {         session("uid","zhangsan");//存一個(gè)session值     } } ?>

推薦學(xué)習(xí):《PHP視頻教程》

贊(0)
分享到: 更多 (0)
?
網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
欧美亚洲一级| 亚洲一区日韩| 日本成人精品| 国产亚洲欧美日韩在线观看一区二区| 97精品久久| 久久99久久久精品欧美| 精品一区二区三区四区五区| 亚洲美女久久精品| 久久精品在线| 国产精品色网| 日韩va亚洲va欧美va久久| 国产精品玖玖玖在线资源| 日韩综合一区| 日韩午夜一区| 91免费精品国偷自产在线在线| 国产精品美女久久久久久不卡| 国产乱码精品一区二区三区四区 | 欧美.日韩.国产.一区.二区| 99久久婷婷| 久热精品在线| 国产精品毛片aⅴ一区二区三区| 国产精品麻豆久久| 黄色亚洲大片免费在线观看| 欧美日韩亚洲一区三区| 色偷偷偷在线视频播放| 野花国产精品入口| 国产精品宾馆| 女同性一区二区三区人了人一| 亚洲精品第一| 亚洲天堂资源| 亚洲精品美女| 成人羞羞在线观看网站| 亚洲精品国模| 中文字幕高清在线播放| 亚洲午夜久久| 91精品推荐| 国产欧美在线| 亚洲一级特黄| 国产精品自拍区| 欧美特黄a级高清免费大片a级| 日韩av黄色在线| 久久香蕉国产| 麻豆久久久久久| 狠狠爱成人网| 精品一区二区三区免费看| 亚洲一区国产| 成人va天堂| 国产亚洲高清在线观看| 亚洲电影在线一区二区三区| 国产精品对白| 久久高清国产| 秋霞影视一区二区三区| 国产激情久久| 在线一区二区三区视频| 亚洲啊v在线| 国产精品巨作av| 日本亚洲视频| 中文一区二区| | 日韩专区在线视频| 91一区二区三区四区| 涩涩涩久久久成人精品| 午夜国产精品视频| 午夜av不卡| 免费视频一区二区三区在线观看 | 亚洲图片久久| 国产一区亚洲| 水蜜桃久久夜色精品一区| 亚洲一级淫片| 老鸭窝亚洲一区二区三区| 91精品国产调教在线观看| 国内精品麻豆美女在线播放视频| 日韩av午夜在线观看| 亚洲有吗中文字幕| 蜜臀久久99精品久久久画质超高清 | 超碰99在线| 久久超碰99| 日本欧美一区| 日韩高清不卡一区| 亚洲欧美网站在线观看| 99视频一区| 欧美日中文字幕| 国产 日韩 欧美 综合 一区| 国产福利一区二区三区在线播放| 日韩国产欧美在线播放| 亚洲精品乱码久久久久久蜜桃麻豆| 亚洲一区日韩| 视频在线在亚洲| 久久国产精品毛片| 日韩精品一二区| 久久亚洲欧美| 蜜臀精品久久久久久蜜臀| 在线看片一区| 日韩va欧美va亚洲va久久| 97久久中文字幕| 18国产精品| 国产精品jk白丝蜜臀av小说| 国产精品视频一区二区三区四蜜臂 | 久久三级视频| 91看片一区| 欧美a级片一区| 一区二区视频欧美| 男人的天堂久久精品| 一区二区三区网站| 日本伊人午夜精品| 日本不卡一区二区| 欧美日韩99| 麻豆91小视频| 日韩和的一区二在线| 欧美特黄一级大片| 蜜桃一区二区三区在线| 日韩高清欧美激情| 久久精品av麻豆的观看方式| 国产精品入口久久| 亚洲精品**中文毛片| 不卡视频在线| 亚洲精品麻豆| 精品久久在线| 激情自拍一区| 日韩精品视频中文字幕| 国产麻豆一区二区三区 | 国产精品亚洲片在线播放| 久久影院一区二区三区| 精品欧美一区二区三区在线观看| 欧美二区视频| 日韩精品免费一区二区夜夜嗨| 国产精品xxx在线观看| 成人精品亚洲| 高清av不卡| 在线综合亚洲| 国产精品中文字幕制服诱惑| 成人污污视频| 噜噜噜躁狠狠躁狠狠精品视频| 婷婷精品在线观看| 97精品视频在线看| 蜜臀久久99精品久久久久宅男 | 免费日本视频一区| 麻豆精品少妇| 国产一区亚洲| 久久精品99国产国产精| 九九色在线视频| 最近国产精品视频| 精品一区二区三区四区五区| 激情欧美国产欧美| 国产精品超碰| 国产一区白浆| 日本aⅴ精品一区二区三区| 中文字幕在线看片| 综合视频一区| 欧美日韩在线观看首页| 蜜臀久久99精品久久久久宅男| 国产精品日本一区二区三区在线| 久久精品国产68国产精品亚洲| 日本不卡视频在线观看| 蜜桃精品在线| 国产精品a久久久久| 国产精品婷婷| av在线资源| 欧美午夜三级| 模特精品在线| 神马久久午夜| 亚洲人成亚洲精品| 神马午夜久久| 久久一区国产| 一区二区三区国产盗摄| 久久国产日韩| 国产一区二区三区四区大秀| 日本一区福利在线| 一区二区亚洲精品| av免费不卡国产观看| 日韩欧美在线精品| 亚洲黄色在线| 99久久精品费精品国产| 成人污污视频| 国产精品www.| 日韩国产欧美视频| 激情91久久| 91精品国产91久久久久久黑人| 久久亚洲黄色| 国产欧美日韩精品高清二区综合区 | 亚洲精品影院在线观看| 久久久久国产精品一区二区| 精品一区二区三区中文字幕 | 精品亚洲美女网站| 九九久久国产| 国产欧美日韩精品一区二区三区| 蜜臀av国产精品久久久久| 五月婷婷亚洲| 日韩三区在线| 日本蜜桃在线观看视频| 国产激情综合| 国产日产精品一区二区三区四区的观看方式| 在线视频免费在线观看一区二区| 日韩在线综合| 电影91久久久| 国产一区二区三区四区| 麻豆国产91在线播放| 国产剧情在线观看一区| 日韩av成人高清| 国产麻豆一区|