【weiphp微信開發教程】留言板插件開發詳解


基於weiphp框架的留言板插件教程:


1、功能分析

傳統的留言板應該具有發布留言、查看留言、回復留言、管理留言等功能,本教程開發的是最基本的留言板,僅包含發布留言和查看留言兩個功能,根據功能用bootstrap制作的前台頁面樣式如下:


2、新建weiphp插件

在第一步我們根據留言板的功能需求設計了前台效果頁面,那么接下來的步驟就是根據效果來逐步開發weiphp插件了

第一步,在weiphp后台管理頁面創建一個插件,記得把是否需要配置項和是否需要管理列表兩個選項都選為“是”

第二步,安裝創建好的插件,點擊插件右側的安裝鏈接即可

回到weiphp前台管理頁面,點擊左側的留言板就能看到已經安裝好的留言板插件了


3、查看代碼結構

插件創建成功后,weiphp框架會自動在Addons目錄下生成一個插件文件夾,本教程生成一個liuyanban文件夾,liuyanban目錄下包 括Controller、Model、View三個文件夾和config.php、LiuyanbanAddon.class.php兩個文件。 Controller里面一般寫邏輯處理代碼,包括數據插入、數據查詢等功能代碼,Model里面主要寫一些與微信交互的代碼,View里面放前台模板。 config.php是配置文件,LiuyanbanAddon.class.php是插件信息文件,一般不需要修改。


4、測試插件是否可用

打開Model/WexinAddonModel.class.php

添加測試代碼。最簡單的測試代碼為$this->replyTest('hello world');

下圖第13、第14行代碼為自己寫上的測試代碼,當用戶在微信中回復“留言板”時,返回系統時間加提示信息

在微信中測試插件是否可用

bingo,插件正常可用,我們接着往下走


5、創建配置文件

打開config.php,寫上下圖所示配置代碼

重新打開留言板管理界面,即可看到配置項設置成功

打開Model/WexinAddonModel.class.php,重新編輯微信響應代碼(第15-25行),返回圖文消息

重新在微信中測試留言板插件

返回單圖文消息,bingo,繼續往下走


6、導入前台模板

第一步,下載前台模板。最開始看到的那個前台頁面我已經上傳到了我的百度網盤,可以從這里下載:http://yun.baidu.com/s/1sjJgwEx

第二步,將下載的前台模板上傳到View/default/Liuyanban文件夾下面

在Controller/LiuyanbanController.class.php中寫上輸出前台的代碼

點擊微信中回復的圖文消息,就可以進入到前台首頁了

現在看到的首頁只是一個靜態的html頁面,點擊“發布>>”沒有任何跳轉,我們需要對“發布>>”添加一個跳轉鏈接

打開index.html頁面,在第22行把“發布>>”的href鏈接改成下圖所示,即跳轉到當前控制器下的liuyan()方法,並傳遞token和uid兩個參數。BTW:{:U('','')}為thinphp生成url的模板方法,不懂的請自行百度

前面在寫LiuyanController的時候我們寫了一個liuyan()方法,該方法沒有進行任何的邏輯處理,只是顯示出留言頁面,即跳轉到 liuyan.html。改好href的鏈接地址后在index.html中點擊右上角的“發布>>”即可跳轉到下圖所示留言發布頁面

同樣,發布留言右上角的“查看>>”鏈接也不可跳轉,我們在第19行把href改成下圖所示


7、數據模型分析與創建

數據庫設計毫無疑問是IT技術中的重中之重,關於數據庫的知識請自行百度mysql教程學習。weiphp提供了一個方便的web端管理數據表模型,針對最開始我們看到的前台頁面,我們來看一下發布留言頁面有哪些input字段

分析可知本留言板插件只需要留言者姓名(name)、留言內容(content)兩個可見的字段,同時要有留言時間(cTime)、留言所在的公眾號Token(token)、留言者的用戶UID(uid)。知道了這些,我們便開始設計數據庫模型。


打開weiphp后台管理頁面,新建liuyanban數據模型,下面的截圖顯示的模型標識為liuyan_info,建議大家改為liuyanban, 因為只有數據模型名為liuyanban(跟插件名一致)的時候,默認的weiphp前台留言板管理列表中才能顯示數據,關於怎么更改默認的數據顯示頁面 與新建多個不同的數據模型不在本教程講述的范圍內,所以大家還是把下圖的數據模型標識寫為liuyanban吧。

創建好了數據模型之后我們便開始新建留言板插件所需的字段,點擊數據模型操作界面右邊的字段管理->新建字段即可。新建前面提到的token、uid、cTime、name、content五個字段,注意在字段新建頁面的“高級”選項中添加字段自動完成規則,token添加get_token(),uid添加get_mid(),cTime添加time()

這就是我們創建好的留言板插件所需的全部字段了

 

回到模型管理頁面,在liuyanban模型的右邊點擊編輯,將liuyanban模型的列表定義改為下圖所示,這樣是為了方便留言板前台管理頁面能夠顯示數據

回到留言板前台管理頁面,就可以看到顯示數據的字段與操作了(留言者、留言內容、留言時間、操作)

到此為止整個數據庫設計過程完成,接下來就是建立邏輯處理代碼操作數據了


8、查詢用戶信息

打開Controller/LiuyanbanController.class.php,在liuyan()方法內寫上下圖所示16、17、18三行代 碼,及根據用戶的uid查詢用戶的信息,並把信息輸出到留言發布頁面的留言者姓名填寫框中。這樣做的目的是為了方便用戶操作,只要綁定過一次個人信息,留 言的時候就不需要重復填寫姓名了

在liuyan.html頁面中將留言者姓名(name)的input框的value值改為用戶的姓名,{$user.nickname}為輸出用戶的昵稱

在進入發布留言頁面的時候只要我們以前綁定過個人信息,在留言者姓名輸入框中就能自動顯示綁定的昵稱了


9、插入留言數據

在liuyan()方法中寫上數據處理代碼(第21-34行),當用戶提交留言數據之后就把留言數據插入到liuyanban數據表中

在留言頁面插入幾條測試數據之后回到留言板插件管理頁面,就能看到用戶提交的留言數據了。


10、顯示留言信息

在index()方法中新建數據查詢代碼,把liuyanban數據表中的數據提取出來並顯示到index.html前台模板

在index.html中用thinkphp模板標簽<volist>把留言數據循環輸出,BTW:weiphp是基於thinkphp開發 的,所有的thinkphp標簽在weiphp中都是可用的,因此要學會weiphp插件開發的關鍵是要懂基本的thinkphp知識

打開index.html,就可以看到所有的留言數據了

至此,整個的weiphp留言板插件開發就完成了,查看此插件效果請在“艾豆樂園”微信公眾平台中回復“留言板”,至於后面的如何將插件打包下載,上傳到新的weiphp框架或者是導出數據模型,請各位自行查看weiphp官方文檔。



轉自:http://my.oschina.net/ecnu/blog/303753

如非特別注明,本站內容均為 領悟書生原創,轉載請務必注明作者和原始出處。
本文地址: http://www.656463.com/article/MZvINf.htm


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM