亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > PHP > 正文

Zend Framework實現具有基本功能的留言本(附demo源碼下載)

2024-05-04 23:44:15
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了Zend Framework實現具有基本功能的留言本,結合實例形式較為詳細的分析了Zend Framework實現留言本的具體步驟與相關實現技巧,需要的朋友可以參考下
 

本文實例講述了Zend Framework實現具有基本功能的留言本。分享給大家供大家參考,具體如下:

一個留言本...具有的基本功能就是.1.發表留言. 2.回復留言.3.管理留言(修改,刪除等操作).

我這里只是寫了基本的操作,比如加留言驗證碼.頁面的美化什么的我都
沒有做.我只是給大家一個思想..很多東西要靠我們自己去學了.

另一個就是我的留言用了AJAX.就是你一發表.數據就會在頁面顯示..不過大家要了解Jquery的AJAX的用法..我相信大部分人都會這個JS類庫吧.

要是不懂也沒關系..你們可以改成不是AJAX的..只要把發表留言的FROM的提交動作轉換成我們控制里的一個動作..相信這個不是問題.好了..開始工作:

我們的目錄結構和以前一樣,大致不變..下面要有改動的..大家也不要急..我會教大家如何做:

第一:先建立好我們的模板頁面(View)..

按照上篇教程的目錄.application/views/scripts目錄下有一些模板頁.如(index.phtml,edit.phtml).我們刪除它們..現在加一個message文件夾.

在message里加上(edit.phtml,index.phtml,message.phtml)三個模板文件.完成后.我們在application/views/scripts/目錄下加上(header.phtml,footer.phtml)二個模板文件.

因為這二個文件以后會重用來..所以把他們直接放到application/views/scripts/下..好了模板建立好了.現在就是加入一個HTML.JS.IMAGE了.我把他們這些都放在網站根目錄public文件夾下.大家可以對應我的源碼來看一下..要是有點亂..請大家根據源碼來看這教程..(^_^不好意思,我只能這樣表達.我也不知道如何寫才能讓你們更了解.請大家體諒啊!)

第二:接下來,我們寫我們的數據層程序(Model).

1.我們在原來的表中加上下面幾個字段:pid(標志是否是回復,0為留言.為為0的是為回復) ,author(留言者),headimg(留言者頭像),email(留言者電子郵件), ip(留言者IP地址), 
show(留言是否顯示.這個要在生臺管理能用.這教程這里沒有用到.), addtime(留言時間), updatetime(留言修改時間).字段類型的設置請大家看源碼SQL文件.

2.我們在application/models/目錄下有一個Message.php.我們先寫好我們留言本的Model .主要是對留言本數據層的操作.我增加了下面幾個方法:
getAllMessage(取到所有的留言) , getAllReMessage(取到所有的回復留言數據) , getMessageByID(根據ID取留言數據), updateMessageByID(修改留言), delMessageByID(刪除留言)

具體程序如下(程序上面也有注解):

class Message extends Zend_Db_Table{ protected $_name ="message"; protected $_primary = 'id'; /* * 取到所有的留言 */ public function getAllMessage(){ $messageArray=$this->fetchAll("message.pid=0",      "message.id DESC")->toArray(); return $messageArray; } /* * 取到所有的回復留言數據 */ public function getAllReMessage(){ $ReArray=$this->fetchAll("message.pid!=0",      "message.id DESC")->toArray(); return $ReArray; } /* * 根據ID取留言數據 */ public function getMessageByID($id){ $messageone=$this->fetchAll('id='.$id)->toArray(); return $messageone; } /* * 修改留言 */ public function updateMessageByID($array,$id){ $db = $this->getAdapter(); $where=$db->quoteInto('id = ?', $id); $this->update($array, $where); } /* * 刪除留言 */ public function delMessageByID($id){ $where = 'id = ' . $id;   $this->delete($where);   return true; }}

第三:完成上面二項.最后就我們的控制層了(Controller).打開application/controllers/IndexController.php這個控制器..把原來的不要的東西給刪除了.我在上面加上了下面

一個message方法(也叫動作Action).不過其它的Action都有改動..請大家參與源碼來進行分析.這里我只貼也我新加入的messageAction這個方法(代碼上都有注解.請自行查看.謝謝):

public function messageAction(){ if($this->_request->isPost()){ Zend_Loader::loadClass('Zend_Filter_StripTags'); $filter=new Zend_Filter_StripTags(); $username=$filter->filter($this->_request->getPost('username')); $email=$filter->filter($this->_request->getPost('email')); $content=$filter->filter($this->_request->getPost('content')); $title=$filter->filter($this->_request->getPost('title')); $messageid=$filter->filter($this->_request->getPost('messageid')); $headimg=$filter->filter($this->_request->getPost('headimg')); $message=new Message(); $db=$message->getAdapter(); if($username!=''&&$email!=''&&$messageid!=''&&$content!=''){ require_once 'Zend/Validate/EmailAddress.php'; $validator = new Zend_Validate_EmailAddress(); if ($validator->isValid($email)) { //取IP地址..這里只是簡單取IP $IP=$_SERVER ["REMOTE_ADDR"]; $data=array( 'title'=>$title, 'author'=>$username,  'pid'=>$messageid, 'headimg'=>$headimg, 'email'=>$email, 'show'=>'1', 'content'=>$content,  'ip'=>$IP, 'addtime'=>time(), 'updatetime'=>time() ); $message->insert($data); $db->lastInsertId(); unset($data);  //取到所有留言getAllMessage,getAllReMessage  //二個方法在Model(Message.php)里定義的  $this->view->messages=$message->getAllMessage(); //取到所有回復數據 $this->view->arrReviews=$message->getAllReMessage(); $this->view->flag='0'; $this->view->message='您的留言發表成功!'; echo $this->view->render('message/message.phtml'); } else { $this->view->flag='5'; $this->view->message='對不起!您填寫有電子郵箱地址有誤!'; echo $this->view->render('message/message.phtml'); }  }elseif($username==''){  $this->view->flag='1'; $this->view->message='對不起!您的大名不能為空!';  echo $this->view->render('message/message.phtml'); }elseif($messageid==''){  $this->view->flag='2'; $this->view->message='對不起!回復留言編號不能為空!';  echo $this->view->render('message/message.phtml'); }elseif($content==''){  $this->view->flag='3'; $this->view->message='對不起!您填寫的留言內容不能為空!';  echo $this->view->render('message/message.phtml');  }  }else{  echo $this->view->render('message/index.phtml');  }}

只是沒有驗證碼以及分頁功能..后面一篇會有教程進一步講解.

總結:到這里就完成了一個留言本的編寫.當然很簡單的功能..還是那句話.我只是把我會的寫給大家..只是一個思想..我也只會這些..所以寫的好與不好..請大家自己進行權衡

完整實例代碼點擊此處本站下。



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
正在播放国产一区| 久久久中精品2020中文| 国产亚洲欧美日韩精品| 尤物yw午夜国产精品视频明星| 成人欧美一区二区三区黑人孕妇| 91av在线播放视频| 欧美精品免费看| 日韩视频免费在线观看| 国产欧美精品va在线观看| 国语自产精品视频在线看一大j8| 久久影视电视剧凤归四时歌| 国产日韩欧美视频| 57pao成人永久免费视频| 欧美极品xxxx| 最近2019年手机中文字幕| 久久久久久久亚洲精品| 欧美性开放视频| 亚洲人成电影在线观看天堂色| 国产v综合ⅴ日韩v欧美大片| 美女av一区二区| 日韩在线观看电影| 亚洲福利在线看| 97**国产露脸精品国产| 亚洲a在线观看| 亚洲人成欧美中文字幕| 91丝袜美腿美女视频网站| 亚洲国产日韩欧美综合久久| 在线播放国产一区二区三区| 久久久久久久久久久av| 久久久久久久久久久av| 久久久久久这里只有精品| 成人乱人伦精品视频在线观看| 中文字幕亚洲欧美日韩2019| 中文字幕亚洲色图| 欧美最猛黑人xxxx黑人猛叫黄| 91精品国产成人| 97精品国产97久久久久久春色| 精品国内自产拍在线观看| 国产精品视频永久免费播放| 91国偷自产一区二区三区的观看方式| 欧美激情精品久久久久久蜜臀| 欧美日韩视频免费播放| 日韩美女毛茸茸| 亚洲日本欧美日韩高观看| 91欧美视频网站| 国产精品视频在线观看| 亚洲欧美另类自拍| 美日韩精品视频免费看| 久久偷看各类女兵18女厕嘘嘘| 9.1国产丝袜在线观看| 亚洲国产日韩欧美在线图片| 国模gogo一区二区大胆私拍| 色av吧综合网| 久久精品视频亚洲| 超碰精品一区二区三区乱码| 日韩视频免费观看| 欧美电影在线观看完整版| 欧美精品videossex性护士| 久久久爽爽爽美女图片| 久久久久久久久亚洲| 日韩av大片免费看| 国产精品影片在线观看| 成人精品一区二区三区| 欧美巨乳美女视频| 成人精品在线视频| 国产精品稀缺呦系列在线| 91免费人成网站在线观看18| 在线电影欧美日韩一区二区私密| 日韩视频免费在线观看| 日韩高清电影免费观看完整| 国产精品自产拍在线观看中文| 中文字幕在线成人| 欧美久久久精品| 日韩有码在线电影| 久久久女人电视剧免费播放下载| 久久久久国产精品一区| 国产日韩换脸av一区在线观看| 97人洗澡人人免费公开视频碰碰碰| 亚洲三级免费看| 欧美色videos| 91精品啪aⅴ在线观看国产| 国产精品视频午夜| 国产精品欧美亚洲777777| 色婷婷综合成人| 日韩电影免费观看在线| 狠狠综合久久av一区二区小说| 欧美成人午夜免费视在线看片| 亚洲欧美中文在线视频| 欧美日韩国产综合新一区| 久久久精品视频在线观看| 亚洲第一中文字幕| 欧美中文在线视频| 亚洲美女免费精品视频在线观看| 久久不射电影网| 欧美一级大片在线观看| 亚洲自拍偷拍在线| xx视频.9999.com| 欧美乱妇40p| 亚洲精品福利视频| 欧美成人午夜激情在线| 色综合视频一区中文字幕| 成人性生交大片免费看小说| 欧美亚洲成人精品| 久久久91精品国产| 91国内免费在线视频| 亚洲精品成a人在线观看| www.欧美视频| 欧美日韩福利视频| 色综合色综合久久综合频道88| 国产美女久久精品| 日韩精品免费综合视频在线播放| 在线视频精品一| 欧美色另类天堂2015| 欧美性受xxxx白人性爽| 免费不卡欧美自拍视频| 欧美日韩免费在线| 亚洲天堂av女优| 国产精品情侣自拍| www.欧美免费| 成人免费视频a| 久久久亚洲精品视频| 国产ts人妖一区二区三区| 国内精品久久久久久影视8| 97视频免费在线看| www.日韩不卡电影av| 亚洲伊人一本大道中文字幕| 久久久精品中文字幕| 久久久亚洲福利精品午夜| 日韩精品日韩在线观看| 久久97久久97精品免视看| 亚洲人成在线观| 亚洲午夜av电影| 欧美亚洲国产另类| 精品久久久久久久久久久久久久| 亚洲精品aⅴ中文字幕乱码| 91日韩在线视频| 国产综合在线看| 97超碰蝌蚪网人人做人人爽| 久久久亚洲国产| 中文字幕av一区中文字幕天堂| 国产精品一区二区3区| 欧美激情xxxx| 日韩电影中文字幕在线| 欧美在线www| 欧美日韩亚洲系列| 亚洲午夜未删减在线观看| 亚洲xxxx做受欧美| 亚洲精品国偷自产在线99热| 日本在线观看天堂男亚洲| 亚洲一二三在线| 国产精品日日做人人爱| 成人av色在线观看| 91精品视频一区| 欧美日韩不卡合集视频| 精品国产一区二区三区久久久| 国产丝袜一区二区三区免费视频| 亚洲欧洲日产国码av系列天堂| 精品国产欧美一区二区五十路| 欧美专区在线观看| 欧美激情手机在线视频| 色综合久久精品亚洲国产| 亚洲第一国产精品| 亚洲97在线观看| 国产精品视频免费在线观看|