本文實例講述了基於thinkPHP框架實作留言板的方法。分享給大家參考,具體如下:
奮鬥了一天,終於THINKPHP小鄧留言版的概念版出來了
其實真的THINKPHP開發速度很快,作為一個互聯網上「搬磚」的,從事這種 純碼農的事也是無可厚非的。
程式碼就實現瞭如下功能
1.留言功能。
2.驗證功能。
3.分頁顯示功能。
就是寫了幾行程式碼(PS:頁面設計程式碼不算,就算控制器和模型的程式碼)
下面我公佈一下控制的器的程式碼,關於THINKPHP的程式碼規則我就不闡述了,看thinkphp手冊就可以了。
class IndexAction extends Action { public function index() { $Form = M("word"); // 按照id排序显示前6条记录 import("@.ORG.Page"); //导入分页类 $count = $Form->count(); //计算总数 $p = new Page ( $count, 1 ); $list=$Form->limit($p->firstRow.','.$p->listRows)->order('id desc')->findAll(); $page = $p->show (); $this->assign ( "page", $page ); $this->assign ( "list", $list ); $this->display(); //模板调用,这个是关键。 } //数据插入 public function insert() { $word = D("word"); if($vo = $word->create()) { if(false !== $word->add()) { $this->success("数据添加成功"); } else { $this->error('数据写入错误!'); } } else { $this->error($word->getError()); } } //验证重复 public function checkTitle() { if (!empty($_POST['username'])) { $Form = M("word"); //getByTitle是model的获取数据根据某字段获取记录的魔术方法 //比如getById etc getByXXX XXX大写 if ($Form->getByUsername($_POST['username'])) { $this->error('<font color=red>标题已经存在</font>'); } else { $this->success('标题可以使用!'); } } else { $this->error('标题必须'); } } }
下面是驗證模型的程式碼
class wordModel extends Model{ protected $_validate = array( array('username', 'require', '称呼必须!', 1),//1为必须验证 array('email', 'email', '邮箱格式错误!', 2),//2为不为空时验证 array('qq','number','QQ号错误',2), array('content', 'require', '内容必须',1), array('username','','称呼已经存在',0,'unique',1) ); protected $_auto = array( array('datetime', 'get_date',1, 'callback'), array('ip','getip',1,'callback') ); protected function get_date() { return date("Y-m-d H:i:s"); } protected function getip() { return $_SERVER['REMOTE_ADDR']; } }
thinkphp有一個要注意的,在CURD操作中,都規定要用表名。
更多關於thinkPHP相關內容有興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結》、《ThinkPHP常用方法總結》、《smarty模板入門基礎教程》及《PHP模板技術總結》。
希望本文所述對大家以ThinkPHP架構為基礎的PHP程式設計有所幫助。