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

站長資訊網
最全最豐富的資訊網站

thinkphp中使用ajax方法嗎

thinkphp中使用ajax方法;thinkphp使用ajax和PHP使用ajax的方法一樣,不同點在于PHP的ajax中的url指向了一個頁面,而thinkphp里面的url需要指向一個操作方法,可以利用ajax返回指定的數據,返回數據類型的修改等。

thinkphp中使用ajax方法嗎

本文操作環境:Windows10系統、ThinkPHP5版、Dell G3電腦。

thinkphp中使用ajax方法嗎

thinkphp中使用ajax方法

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

一、thinkphp使用ajax返回數據

1.先在AdminControllerMainController.class.php里面寫一個方法 

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

2.在AdminViewMain文件夾里面建對應的顯示頁面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>無標題文檔</title> </head> <body>     <select id="nation"></select> </body> <script type="text/javascript">         $.ajax({             url:"__CONTROLLER__/ajaxchuli",//這里指向的就不再是頁面了,而是一個方法。             data:{},             type:"POST",             dataType:"JSON",             success: function(data){                 //alert(data[0].code);//這里要用索引,使用eq讀取不出來數據。                 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");//造一個nation表的模型對象         $attr = $n->select();                  $this->ajaxReturn($attr);//ajax返回數據的方式,用ajaxReturn。     }

4.這樣就把數據顯示在了頁面

二、ajax返回數據類型的修改

在thinkphp中ajax默認的是返回JSON數據,可以通過配置DEFAULT_AJAX_RETURN進行設置,設置方式如下

// 指定XML格式返回數據 $data['status'] = 1; $data['content'] = 'content'; $this->ajaxReturn($data,'xml');

如果是XML方式,會自動編碼成XML字符串,如果是EVAL方式的話,只會輸出字符串data數據。

示例:

public function ajaxchuli() { $this->ajaxReturn("hello","eval");//將返回數據的類型更改成字符串 }

同時也要講ajax里面的數據類型改為TEXT

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

三、用ajax和create(自動收集表單)向數據庫中添加數據

1.先寫訪問的方法

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

2.寫訪問的頁面

<body> <div>代號:<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方法,這里的列名就要和數據庫中的列名一樣,這里的首字母要大寫。                 type:"POST",                 dataType:"TEXT",                 success: function(data){                     alert(data);                 }             })     }) </script>

3.寫ajax處理的方法

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

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

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

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

2.做顯示頁面

<body> <table width="100%" border="1" cellpadding="0" cellspacing="0">     <tr>         <td>代號</td>         <td>名稱</td>         <td>父級代號</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復制到thinkphpApplicationHomelibs里面;

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

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

五、輸出字符串的長度

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

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

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

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

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

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

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

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

"LOAD_EXT_FILE"=>"functions",//自動加載函數庫類

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

六、自動判斷session是否存在

1.session的用途

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

(2)防止跳過登錄;

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

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

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

(2)寫一個test方法,注意繼承的父類是FuController,而不是Controller。第一次走這個頁面時會跳轉到login方法里面,因為沒有session值,會執行上面的$this->redirect("Home/Login/login",array(),5,'請登錄');

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

(3)寫一個login方法。上面的test方法跳轉到login方法以后會存上session,再走test方法就會出現字符串的長度,因為有了sesion值,test方法會繼續往下執行。

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

推薦學習:《PHP視頻教程》

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
裤袜国产欧美精品一区| 偷拍欧美精品| 日韩在线成人| 午夜视频一区二区在线观看| 日韩制服丝袜先锋影音| 亚洲综合五月| 亚洲精品免费观看| 日韩高清不卡在线| 欧美亚洲一级| 精品无人区麻豆乱码久久久| 国产一区一一区高清不卡| sm久久捆绑调教精品一区| 免费高潮视频95在线观看网站| 免费在线小视频| 欧美国产偷国产精品三区| 日韩免费一区| 欧美日韩一二三四| 91久久亚洲| 亚洲香蕉久久| 国产剧情在线观看一区| 国产精品久久| 国产精品国产三级国产在线观看| 毛片在线网站| 在线视频亚洲| 亚洲精选久久| 欧美aaaaaa午夜精品| 国产成人精品999在线观看| 欧洲一区二区三区精品| 在线精品小视频| 久久午夜视频| 国产精品综合| 91精品韩国| 美女被久久久| 国产精品一区二区三区av麻| 91视频一区| 亚洲免费精品| 欧美日一区二区三区在线观看国产免| 国产一区调教| 久久aⅴ国产紧身牛仔裤| 国产情侣久久| 国产一区清纯| 日韩av不卡一区二区| 丰满少妇一区| 免费人成精品欧美精品| 国产亚洲一区| 欧美肉体xxxx裸体137大胆| 亚洲ab电影| 中文一区一区三区高中清不卡免费| 欧美特黄一区| 国产精品sss在线观看av| 99视频精品全部免费在线视频| 亚洲一区二区免费在线观看| 麻豆国产一区| 亚洲激精日韩激精欧美精品| 国产精品亚洲一区二区在线观看| 久久精品电影| 青青草伊人久久| 伊人久久大香线蕉av不卡| 欧美亚洲一级| 欧洲亚洲一区二区三区| 日韩高清在线不卡| 久久男女视频| 国产欧美日韩精品一区二区免费| 成人精品天堂一区二区三区| 青青草伊人久久| 欧美 日韩 国产一区二区在线视频| 国产欧美日韩在线观看视频| 久久免费大视频| 国产精品日本一区二区不卡视频| 在线日韩电影| 老牛国内精品亚洲成av人片 | 日韩视频在线一区二区三区 | 欧美日韩a区| 偷拍欧美精品| 福利一区二区| 久久亚洲视频| 欧美日韩1区2区3区| 国产99久久久国产精品成人免费| 91午夜精品| 中文精品在线| 97国产成人高清在线观看| 97久久精品| 香蕉久久国产| 黑人精品一区| 日本欧美一区二区在线观看| 伊人久久婷婷| 日韩免费福利视频| 国产精品777777在线播放| 亚洲午夜免费| 色爱av综合网| 国产日韩欧美一区二区三区在线观看 | 99久久99视频只有精品| 国产精品亚洲欧美一级在线| 夜夜嗨网站十八久久| 樱桃视频成人在线观看| 国产精品亚洲欧美| 久久国产精品亚洲77777| 久久久一本精品| www.九色在线| 久久精品色播| 国产精品中文| 日韩av黄色在线| 水野朝阳av一区二区三区| 日本在线不卡视频| 日韩午夜高潮| 欧美午夜精彩| 日韩精品诱惑一区?区三区| 国产伦乱精品| 婷婷综合福利| 在线精品一区二区| 伊人久久亚洲| 久久中文精品| 日韩毛片视频| 精品久久精品| 国产精品传媒麻豆hd| 日韩欧美中文字幕电影| 免费精品视频在线| 首页欧美精品中文字幕| 国产手机视频一区二区 | 另类综合日韩欧美亚洲| 欧美日韩午夜| 欧美在线不卡| 青草国产精品| 日本a级不卡| 亚洲视频国产| 影音先锋久久精品| 免费在线观看视频一区| 免费人成黄页网站在线一区二区| 六月丁香综合| 亚洲小说春色综合另类电影| 亚洲国产成人精品女人| 黄色国产精品| 蜜臀va亚洲va欧美va天堂 | 国产精品日本| 蜜桃视频第一区免费观看| 蜜桃久久久久久| 日韩精品电影一区亚洲| 欧美另类中文字幕| 久久精品国产福利| 国产精品99精品一区二区三区∴| 美女国产一区二区三区| 成人午夜网址| 999国产精品999久久久久久| 91九色精品国产一区二区| 中文亚洲免费| 91精品丝袜国产高跟在线| 国产极品嫩模在线观看91精品| 精品中国亚洲| 欧美黄色网页| 亚洲一区网站| 日本va欧美va瓶| 久久男人av| 激情欧美亚洲| 中文字幕av一区二区三区四区| 亚洲+小说+欧美+激情+另类| 国产精品夜夜夜| 亚洲伦乱视频| 老色鬼久久亚洲一区二区| 日韩av不卡在线观看| 国产不卡av一区二区| 国产一区久久| 日韩1区2区3区| 精品国产18久久久久久二百| 午夜av成人| 亚洲精品大片| 高清av一区| 日韩视频一区| 欧美亚洲免费| 色婷婷精品视频| 在线观看免费一区二区| 日韩1区2区日韩1区2区| 中国字幕a在线看韩国电影| 99香蕉国产精品偷在线观看 | 国产精品蜜月aⅴ在线| 欧美aa一级| 亚洲欧洲美洲国产香蕉| 国语精品一区| 日韩精品一级中文字幕精品视频免费观看 | 欧美国产另类| 黄色在线观看www| 日本欧美在线看| 精品欧美日韩精品| 亚洲激情精品| 精品欠久久久中文字幕加勒比| 欧美va天堂在线| 欧美日韩在线精品一区二区三区激情综合| 在线看片国产福利你懂的| 免费看黄色91| 三级在线看中文字幕完整版| 色8久久久久| 久久天堂精品| 国产欧美日韩精品一区二区免费| 欧美1区2区3区| 久久久久伊人| 亚洲在线久久| 久久九九精品| 牛牛精品成人免费视频| 美国三级日本三级久久99| 美女一区网站| 欧美综合精品|