国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Jadual Kandungan
Zend Framework實(shí)現(xiàn)具有基本功能的留言本(附demo源碼下載),zenddemo
您可能感興趣的文章:
Rumah pembangunan bahagian belakang tutorial php Zend Framework實(shí)現(xiàn)具有基本功能的留言本(附demo源碼下載),zenddemo_PHP教程

Zend Framework實(shí)現(xiàn)具有基本功能的留言本(附demo源碼下載),zenddemo_PHP教程

Jul 12, 2016 am 08:56 AM
framework htaccess zend

Zend Framework實(shí)現(xiàn)具有基本功能的留言本(附demo源碼下載),zenddemo

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

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

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

另一個(gè)就是我的留言用了AJAX.就是你一發(fā)表.數(shù)據(jù)就會(huì)在頁(yè)面顯示..不過大家要了解Jquery的AJAX的用法..我相信大部分人都會(huì)這個(gè)JS類庫(kù)吧.

要是不懂也沒關(guān)系..你們可以改成不是AJAX的..只要把發(fā)表留言的FROM的提交動(dòng)作轉(zhuǎn)換成我們控制里的一個(gè)動(dòng)作..相信這個(gè)不是問題.好了..開始工作:

我們的目錄結(jié)構(gòu)和以前一樣,大致不變..下面要有改動(dòng)的..大家也不要急..我會(huì)教大家如何做:

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

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

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

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

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

1.我們?cè)谠瓉淼谋碇屑由舷旅鎺讉€(gè)字段:pid(標(biāo)志是否是回復(fù),0為留言.為為0的是為回復(fù)) ,author(留言者),headimg(留言者頭像),email(留言者電子郵件), ip(留言者IP地址),
show(留言是否顯示.這個(gè)要在生臺(tái)管理能用.這教程這里沒有用到.), addtime(留言時(shí)間), updatetime(留言修改時(shí)間).字段類型的設(shè)置請(qǐng)大家看源碼SQL文件.

2.我們?cè)赼pplication/models/目錄下有一個(gè)Message.php.我們先寫好我們留言本的Model .主要是對(duì)留言本數(shù)據(jù)層的操作.我增加了下面幾個(gè)方法:
getAllMessage(取到所有的留言) , getAllReMessage(取到所有的回復(fù)留言數(shù)據(jù)) , getMessageByID(根據(jù)ID取留言數(shù)據(jù)), 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;
 }
 /* * 取到所有的回復(fù)留言數(shù)據(jù) */
 public function getAllReMessage(){
 $ReArray=$this->fetchAll("message.pid!=0",
      "message.id DESC")->toArray();
 return $ReArray;
 }
 /* * 根據(jù)ID取留言數(shù)據(jù) */
 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;
 }
}

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

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

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地址..這里只是簡(jiǎn)單取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
  //二個(gè)方法在Model(Message.php)里定義的
  $this->view->messages=$message->getAllMessage();
 //取到所有回復(fù)數(shù)據(jù)
 $this->view->arrReviews=$message->getAllReMessage();
 $this->view->flag='0';
 $this->view->message='您的留言發(fā)表成功!';
 echo $this->view->render('message/message.phtml');
 } else {
 $this->view->flag='5';
 $this->view->message='對(duì)不起!您填寫有電子郵箱地址有誤!';
 echo $this->view->render('message/message.phtml');
 }
  }elseif($username==''){
  $this->view->flag='1';
 $this->view->message='對(duì)不起!您的大名不能為空!';
  echo $this->view->render('message/message.phtml');
 }elseif($messageid==''){
  $this->view->flag='2';
 $this->view->message='對(duì)不起!回復(fù)留言編號(hào)不能為空!';
  echo $this->view->render('message/message.phtml');
 }elseif($content==''){
  $this->view->flag='3';
 $this->view->message='對(duì)不起!您填寫的留言內(nèi)容不能為空!';
  echo $this->view->render('message/message.phtml');
  }
  }else{
  echo $this->view->render('message/index.phtml');
  }
}

只是沒有驗(yàn)證碼以及分頁(yè)功能..后面一篇會(huì)有教程進(jìn)一步講解.

總結(jié):到這里就完成了一個(gè)留言本的編寫.當(dāng)然很簡(jiǎn)單的功能..還是那句話.我只是把我會(huì)的寫給大家..只是一個(gè)思想..我也只會(huì)這些..所以寫的好與不好..請(qǐng)大家自己進(jìn)行權(quán)衡

完整實(shí)例代碼點(diǎn)擊此處本站下載。

更多關(guān)于zend相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Zend FrameWork框架入門教程》、《php優(yōu)秀開發(fā)框架總結(jié)》、《Yii框架入門及常用技巧總結(jié)》、《ThinkPHP入門教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php+mysql數(shù)據(jù)庫(kù)操作入門教程》及《php常見數(shù)據(jù)庫(kù)操作技巧匯總》

希望本文所述對(duì)大家基于Zend Framework框架的PHP程序設(shè)計(jì)有所幫助。

您可能感興趣的文章:

  • Zend Framework框架教程之Zend_Db_Table_Rowset用法實(shí)例分析
  • Zend Framework教程之Zend_Db_Table_Row用法實(shí)例分析
  • Zend Framework教程之Zend_Db_Table用法詳解
  • Zend Framework教程之Zend_Form組件實(shí)現(xiàn)表單提交并顯示錯(cuò)誤提示的方法
  • Zend Framework開發(fā)入門經(jīng)典教程
  • Zend Framework框架Smarty擴(kuò)展實(shí)現(xiàn)方法
  • Zend Framework框架路由機(jī)制代碼分析
  • Zend Framework實(shí)現(xiàn)將session存儲(chǔ)在memcache中的方法
  • Zend Framework分頁(yè)類用法詳解
  • Zend Framework實(shí)現(xiàn)多文件上傳功能實(shí)例
  • Zend Framework入門之環(huán)境配置及第一個(gè)Hello World示例(附demo源碼下載)
  • Zend Framework教程之連接數(shù)據(jù)庫(kù)并執(zhí)行增刪查的方法(附demo源碼下載)
  • Zend Framework教程之Zend_Db_Table表關(guān)聯(lián)實(shí)例詳解

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1113722.htmlTechArticleZend Framework實(shí)現(xiàn)具有基本功能的留言本(附demo源碼下載),zenddemo 本文實(shí)例講述了Zend Framework實(shí)現(xiàn)具有基本功能的留言本。分享給大家供大家參...
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial PHP
1502
276
Bagaimana untuk mengenal pasti isu peningkatan Windows menggunakan SetupDiag pada Windows 11/10 Bagaimana untuk mengenal pasti isu peningkatan Windows menggunakan SetupDiag pada Windows 11/10 Apr 17, 2023 am 10:07 AM

Setiap kali PC Windows 11 atau Windows 10 anda mempunyai masalah naik taraf atau kemas kini, anda biasanya akan melihat kod ralat yang menunjukkan sebab sebenar di sebalik kegagalan. Walau bagaimanapun, kadangkala kekeliruan boleh timbul apabila peningkatan atau kemas kini gagal tanpa kod ralat dipaparkan. Dengan kod ralat yang berguna, anda tahu dengan tepat di mana masalahnya supaya anda boleh cuba membetulkannya. Tetapi kerana tiada kod ralat muncul, ia menjadi mencabar untuk mengenal pasti isu dan menyelesaikannya. Ini akan mengambil banyak masa anda untuk mengetahui sebab di sebalik ralat. Dalam kes ini, anda boleh cuba menggunakan alat khusus yang dipanggil SetupDiag yang disediakan oleh Microsoft yang membantu anda mengenal pasti dengan mudah sebab sebenar di sebalik ralat.

Isu Pemasangan Rangka Kerja Microsoft NET Kod Ralat 0x800c0006 Betulkan Isu Pemasangan Rangka Kerja Microsoft NET Kod Ralat 0x800c0006 Betulkan May 05, 2023 pm 04:01 PM

.NET Framework 4 diperlukan oleh pembangun dan pengguna akhir untuk menjalankan versi terkini aplikasi pada Windows. Walau bagaimanapun, semasa memuat turun dan memasang .NET Framework 4, ramai pengguna mengadu bahawa pemasang berhenti di tengah jalan, memaparkan mesej ralat berikut - " .NET Framework 4 belum dipasang kerana Muat turun gagal dengan kod ralat 0x800c0006 ". Jika anda juga mengalaminya semasa memasang .NETFramework4 pada peranti anda maka anda berada di tempat yang betul

SCNotification telah berhenti berfungsi [5 langkah untuk membetulkannya] SCNotification telah berhenti berfungsi [5 langkah untuk membetulkannya] May 17, 2023 pm 09:35 PM

Sebagai pengguna Windows, anda mungkin akan menghadapi ralat SCNotification telah berhenti berfungsi setiap kali anda memulakan komputer anda. SCNotification.exe ialah fail pemberitahuan sistem Microsoft yang ranap setiap kali anda memulakan PC anda kerana ralat kebenaran dan kegagalan rangkaian. Ralat ini juga dikenali dengan nama acaranya yang bermasalah. Jadi anda mungkin tidak melihat ini sebagai SCNotification telah berhenti berfungsi, tetapi sebagai pepijat clr20r3. Dalam artikel ini, kami akan meneroka semua langkah yang anda perlu ambil untuk membetulkan SNotification telah berhenti berfungsi supaya ia tidak mengganggu anda lagi. Apakah itu SNotification.e

Rangka Kerja Pelaksanaan PHP: Tutorial Permulaan Rangka Kerja Zend Rangka Kerja Pelaksanaan PHP: Tutorial Permulaan Rangka Kerja Zend Jun 19, 2023 am 08:09 AM

Rangka kerja pelaksanaan PHP: Tutorial pengenalan ZendFramework ZendFramework ialah rangka kerja tapak web sumber terbuka yang dibangunkan oleh PHP dan kini diselenggara oleh ZendTechnologies menggunakan corak reka bentuk MVC dan menyediakan satu siri perpustakaan kod boleh guna semula untuk melaksanakan aplikasi Web2.0 dan Web Serve. ZendFramework sangat popular dan dihormati oleh pembangun PHP dan mempunyai pelbagai jenis

Microsoft .NET Framework 4.5.2, 4.6 dan 4.6.1 akan menamatkan sokongan pada April 2022 Microsoft .NET Framework 4.5.2, 4.6 dan 4.6.1 akan menamatkan sokongan pada April 2022 Apr 17, 2023 pm 02:25 PM

Pengguna Microsoft Windows yang telah memasang Microsoft.NET versi 4.5.2, 4.6 atau 4.6.1 mesti memasang versi Microsoft Framework yang lebih baharu jika mereka mahu Microsoft menyokong rangka kerja melalui kemas kini produk masa hadapan. Menurut Microsoft, ketiga-tiga rangka kerja akan menghentikan sokongan pada 26 April 2022. Selepas tarikh sokongan tamat, produk tidak akan menerima "pembetulan keselamatan atau sokongan teknikal." Kebanyakan peranti rumah sentiasa dikemas kini melalui kemas kini Windows. Peranti ini sudah mempunyai versi rangka kerja yang lebih baharu yang dipasang, seperti .NET Framework 4.8. Peranti yang tidak mengemas kini secara automatik boleh

Cara menggunakan ACL (Senarai Kawalan Akses) untuk kawalan kebenaran dalam Rangka Kerja Zend Cara menggunakan ACL (Senarai Kawalan Akses) untuk kawalan kebenaran dalam Rangka Kerja Zend Jul 29, 2023 am 09:24 AM

Cara menggunakan ACL (AccessControlList) untuk kawalan kebenaran dalam Rangka Kerja Zend Pengenalan: Dalam aplikasi web, kawalan kebenaran ialah fungsi penting. Ia memastikan bahawa pengguna hanya boleh mengakses halaman dan ciri yang dibenarkan untuk mereka akses dan menghalang akses yang tidak dibenarkan. Rangka kerja Zend menyediakan cara yang mudah untuk melaksanakan kawalan kebenaran, menggunakan komponen ACL (AccessControlList). Artikel ini akan memperkenalkan cara menggunakan ACL dalam Rangka Kerja Zend

KB5012643 untuk Windows 11 memecahkan apl .NET Framework 3.5 KB5012643 untuk Windows 11 memecahkan apl .NET Framework 3.5 May 09, 2023 pm 01:07 PM

Sudah seminggu sejak kita bercakap tentang pepijat mod selamat baharu yang menjejaskan pengguna yang memasang KB5012643 untuk Windows 11. Isu menjengkelkan ini tidak muncul dalam senarai isu yang diketahui yang disiarkan oleh Microsoft pada hari pelancaran, lantas mengejutkan semua orang. Nah, apabila anda fikir keadaan tidak akan menjadi lebih buruk, Microsoft menjatuhkan bom lain untuk pengguna yang telah memasang kemas kini kumulatif ini. Windows 11 Build 22000.652 menyebabkan lebih banyak masalah Jadi syarikat teknologi memberi amaran kepada pengguna Windows 11 bahawa mereka mungkin mengalami masalah melancarkan dan menggunakan beberapa aplikasi .NET Framework 3.5. Bunyi biasa? Tapi tolong jangan terkejut

Bagaimana untuk membetulkan ralat 0xc0000135 pada Windows 11 (selesaikan isu kemas kini KB5013943) Bagaimana untuk membetulkan ralat 0xc0000135 pada Windows 11 (selesaikan isu kemas kini KB5013943) May 11, 2023 am 08:28 AM

Apakah ralat 0xc0000135 dan mengapa saya mendapatkannya? Menurut dokumentasi rasmi Microsoft, kod ralat 0xc0000135 berkaitan dengan isu .NetFramework. Nampaknya banyak aplikasi yang memerlukan .NetFramework3.5 untuk berfungsi tidak berfungsi dengan kemas kini Windows 11 terkini. Inilah yang menyebabkan kod ralat 0xc0000135 dan anda boleh menyelesaikan isu ini dengan mendayakan .NetFramework3.5 pada PC anda. Kebanyakan aplikasi moden bergantung pada fail .NetFramework.dll untuk dijalankan seperti yang diharapkan di latar belakang. tetapi

See all articles