一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - Zend Framework框架中實現Ajax的方法示例

Zend Framework框架中實現Ajax的方法示例

2021-05-31 17:33anyx PHP教程

這篇文章主要介紹了Zend Framework框架中實現Ajax的方法,結合實例形式詳細分析了Zend Framework框架中實現ajax功能的具體步驟與相關操作技巧,需要的朋友可以參考下

本文實例講述了Zend Framework框架中實現Ajax的方法。分享給大家供大家參考,具體如下:

開發平臺:Windows XP SP2
測試平臺:FreeBSD 7.0
開發工具:Netbeans 6.1
使用框架:Zend Framework 1.5.2
數據庫: MySQL 5.0.51a

所需的數據庫表和ZF相關目錄以及文件:

一、表:

?
1
2
3
4
5
6
7
8
9
10
11
12
mysql> select * from news;
+----+-------+---------------------+
| id | title | add_time
| +----+-------+---------------------+
| 22 | rot  | 2008-01-04 00:00:00 |
| 23 | aaa  | 2008-01-04 00:00:00 |
| 24 | rot  | 2008-01-04 00:00:00 |
| 29 | dfeew | 2008-02-27 00:00:00 |
| 26 | jesse | 2008-02-27 00:00:00 |
| 27 | andle | 2008-02-27 00:00:00 |
| 28 | andle | 2008-02-27 00:00:00 |
+----+-------+---------------------+

二、目錄:

Zend Framework框架中實現Ajax的方法示例

三、相關文件:

1.index.php //入口文件

2.TestDbCon.phhp //數據庫連接文件

3.News.php //抽象出來的數據庫表文件

4.TestController.php //控制器

5.ajax.phtml //客戶操作頁面,包含生成XMLHttpRequest對象,發ajax請求,處理請求,取回服務器返回值等

6.get-ajax.phtml //最后根據由服務器取回的數據生成頁面元素

相關文件內容:

1.index.php //入口文件

?
1
2
3
4
5
6
7
8
9
<?php
set_include_path('.' . PATH_SEPARATOR .'../library' . PATH_SEPARATOR . get_include_path() . PATH_SEPARATOR . '../application/modules/default/models' . PATH_SEPARATOR . '../application/modules/admin/models');
require_once 'Zend/Controller/Front.php';
require_once 'Zend/Controller/Router/Route.php';
$ctrl=Zend_Controller_Front::getInstance();
$ctrl->addModuleDirectory('../application/modules');
$ctrl->throwExceptions(true);
$ctrl->dispatch();
?>

2.TestDbCon.phhp //數據庫連接文件

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
  require_once 'Zend/Db.php';
  require_once 'Zend/Registry.php';
  class TestDbCon{
    public static function getTestDbCon(){
      $params=array(
      'host'=>'localhost',
      'username'=>'root',
      'password'=>'123456',
      'dbname'=>'test'
      );
      $con=Zend_Db::factory('Pdo_Mysql',$params);
      return $con;
    }
  }
?>

3.News.php //抽象出來的數據庫表文件

?
1
2
3
4
5
6
7
8
9
10
11
12
<?php
/**
 * PHP Template.
 */
require_once 'Zend/Db/Table/Abstract.php';
class News extends Zend_Db_Table_Abstract{
  //  protected $_schema='test';
    protected $_name='news';
    protected $_primary='id';
    protected $_sequence=true;
}
?>

4.TestController.php //控制器

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
  require_once 'Zend/Controller/Action.php';
  require_once 'Zend/View.php';
  require_once 'News.php';
  require_once 'TestDbCon.php';
  class TestController extends Zend_Controller_Action{
    public function ajaxAction(){
      $this->render();
    }
    public function getAjaxAction(){
//      $aaa=$_GET['q'];
//      $this->view->sid=$_GET['sid'];
      $aaa=$this->_request->getParam('q');
      $this->view->sid=$this->_request->getParam('sid');
      $conn=TestDbCon::getTestDbCon();
      $news_tb=new News(array('db'=>$conn));
      $where=$news_tb->getAdapter()->quoteInto('title=?',$aaa);
      $this->view->rowSet=$news_tb->fetchAll($where);
      $this->render();
    }
  }
?>

5.ajax.phtml //客戶操作頁面,包含生成XMLHttpRequest對象,發ajax請求,處理請求,取回服務器返回值等

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<script type="text/javascript">
  var xmlHttp
  function showValue(str)
  {
    xmlHttp=getXmlHttpObject();
    if (xmlHttp==null)
    {
      alert ("您的瀏覽器不支持AJAX.");
      return;
    }
    var url="/test/get-ajax";
    url=url+"/q/"+str;
    url=url+"/sid/"+Math.random();
    xmlHttp.onreadystatechange=stateChanged;
    xmlHttp.open("GET",url,true);
    xmlHttp.send(null);
  }
  function stateChanged()
  {
    if (xmlHttp.readyState==4)
    {
      document.getElementById("resulte").innerHTML=xmlHttp.responseText;
    }
  }
  function getXmlHttpObject()
  {
    var xmlHttp=null;
    try
    {
      // Firefox, Opera 8.0+, Safari
      xmlHttp=new XMLHttpRequest();
    }
    catch (e)
    {
      // Internet Explorer
      try
      {
        xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      }
      catch (e)
      {
        xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    }
    return xmlHttp;
  }
</script>
<form>
  請選擇一位客戶:
  <select name="customers" onchange="showValue(this.value)">
  <option value="rot">rot</option>
  <option value="aaa">aaa</option>
  <option value="jesse">jesse</option>
  <option value="andle">andle</option>
  </select>
</form>
<p>
<div id="resulte"><b>客戶信息將在此處列出。</b></div>
</p>

6.get-ajax.phtml //最后根據由服務器取回的數據生成頁面元素

 

希望本文所述對大家基

  1. <?php 
  2.   foreach($this->rowSet as $row){ 
  3.     echo "<div>"
  4.     echo "<ul>"
  5.     echo "<li>"
  6.     echo "id=".$row->id." title=".$row->title." add_time=".$row->add_time; 
  7.     echo "</li>"
  8.     echo "</ul>"
  9.     echo "</div>"
  10.   } 
  11.  echo $this->sid; 
  12. ?> 

于Zend Framework框架的PHP程序設計有所幫助。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧美精选视频 | 午夜dj影院在线视频观看完整 | 国产精品夜色视频一级区 | 污小说免费 | 特黄aa级毛片免费视频播放 | 古装一级毛片 | 国产精品免费视频能看 | 5g影院天天影院天天爽影院网站 | b片在线观看 | 日本加勒比在线精品视频 | 99久久精品免费看国产 | 99热这里只有精品在线 | 国产精品亚洲午夜一区二区三区 | 操bb视频| 日韩国产欧美成人一区二区影院 | 好爽好紧小雪别夹小说 | 亚洲福利在线观看 | 99re在线精品视频免费 | 日本高清免费观看 | 996热精品视频在线观看 | 亚洲成av人片在线观看天堂无码 | 大学生情侣在线 | poren18美女 | 日韩一区二三区无 | 大奶喷水 | 公交车高h| 国内偷拍第一页 | www.一级片.com| 国产原创一区二区 | 香蕉在线精品亚洲第一区 | 王淑兰与铁柱全文免费阅读 | 欧美在线一二三区 | 国产全部理论片线观看 | www.日日爱 | 涩涩国产精品福利在线观看 | 男人晚上适合偷偷看的污污 | 激情视频激情小说 | 日本三级欧美三级人妇英文 | 国产精品热久久毛片 | 国产成人精品免费视频软件 | 国产无限免费观看黄网站 |