基于thinkPHP框架实现留言板的方法


Posted in PHP onOctober 17, 2016

本文实例讲述了基于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框架的PHP程序设计有所帮助。

PHP 相关文章推荐
一个高ai的分页函数和一个url函数
Oct 09 PHP
php 验证码实例代码
Jun 01 PHP
约瑟夫环问题的PHP实现 使用PHP数组内部指针操作函数
Oct 12 PHP
PHP与SQL注入攻击防范小技巧
Sep 16 PHP
php使用array_search函数实现数组查找的方法
Jun 12 PHP
PHP如何将log信息写入服务器中的log文件
Jul 29 PHP
PHP可变函数学习小结
Nov 29 PHP
php冒泡排序与快速排序实例详解
Dec 07 PHP
Yii2 RESTful中api的使用及开发实例详解
Jul 06 PHP
php简单实现多维数组排序的方法
Sep 30 PHP
PHP实现链表的定义与反转功能示例
Jun 09 PHP
PHP+Mysql分布式事务与解决方案深入理解
Feb 27 PHP
php并发加锁示例
Oct 17 #PHP
thinkPHP自动验证、自动添加及表单错误问题分析
Oct 17 #PHP
PHP CURL post数据报错 failed creating formpost data
Oct 16 #PHP
PHPStrom 新建FTP项目以及在线操作教程
Oct 16 #PHP
php根据数据id自动生成编号的实现方法
Oct 16 #PHP
PHP结合Ueditor并修改图片上传路径
Oct 16 #PHP
jquery+thinkphp实现跨域抓取数据的方法
Oct 15 #PHP
You might like
谈谈新手如何学习PHP 默默经典版本
2009/08/04 PHP
详谈PHP文件目录基础操作
2014/11/11 PHP
Ubuntu 16.04下安装PHP 7过程详解
2017/03/28 PHP
利用PHPStorm如何开发Laravel应用详解
2017/08/30 PHP
PHP mongodb操作类定义与用法示例【适合mongodb2.x和mongodb3.x】
2018/06/16 PHP
PHP+iframe模拟Ajax上传文件功能示例
2019/07/02 PHP
js AspxButton的客户端操作
2009/06/26 Javascript
javascript 读取xml,写入xml 实现代码
2009/07/10 Javascript
JS getStyle获取最终样式函数代码
2010/04/01 Javascript
jQuery插件slick实现响应式移动端幻灯片图片切换特效
2015/04/12 Javascript
js改变css样式的三种方法推荐
2016/06/28 Javascript
AngularJS基础 ng-disabled 指令详解及简单示例
2016/08/01 Javascript
jQuery实现弹出带遮罩层的居中浮动窗口效果
2016/09/12 Javascript
基于js实现checkbox批量选中操作
2016/11/22 Javascript
Vue.js实现一个todo-list的上移下移删除功能
2017/06/26 Javascript
使用Angular CLI从蓝本生成代码详解
2018/03/24 Javascript
React中嵌套组件与被嵌套组件的通信过程
2018/07/11 Javascript
Vue开发实现吸顶效果的示例代码
2018/08/21 Javascript
js实现动态添加上传文件页面
2018/10/22 Javascript
python转换摩斯密码示例
2014/02/16 Python
python网络编程之读取网站根目录实例
2014/09/30 Python
Python实现向QQ群成员自动发邮件的方法
2014/11/19 Python
分析Python编程时利用wxPython来支持多线程的方法
2015/04/07 Python
pyqt 实现QlineEdit 输入密码显示成圆点的方法
2019/06/24 Python
python实现自动化上线脚本的示例
2019/07/01 Python
wxPython实现带颜色的进度条
2019/11/19 Python
2014乡镇党政班子四风问题思想汇报
2014/09/14 职场文书
交通事故委托书范本
2014/09/28 职场文书
运动员入场前导词
2015/07/20 职场文书
go 原生http web 服务跨域restful api的写法介绍
2021/04/27 Golang
golang 在windows中设置环境变量的操作
2021/04/29 Golang
python中requests库+xpath+lxml简单使用
2021/04/29 Python
Python 恐龙跑跑小游戏实现流程
2022/02/15 Python
Mysql 一主多从的部署
2022/05/20 MySQL
Android 中的类文件和类加载器详情
2022/06/05 Java/Android
Nginx文件已经存在全局反向代理问题排查记录
2022/07/15 Servers