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

 更新时间:2016年10月17日 09:43:16   作者:dengwz7788  
这篇文章主要介绍了基于thinkPHP框架实现留言板的方法,简单分析了thinkPHP框架实现留言板的流程及控制器与模型的相关核心代码,需要的朋友可以参考下

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

相关文章

  • 使用PHP连接数据库_实现用户数据的增删改查的整体操作示例

    使用PHP连接数据库_实现用户数据的增删改查的整体操作示例

    下面小编就为大家带来一篇使用PHP连接数据库_实现用户数据的增删改查的整体操作示例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • 如何让搜索引擎抓取AJAX内容解决方案

    如何让搜索引擎抓取AJAX内容解决方案

    谈到AJAX很多人会联想到JavaScript,直到现在为止各大搜索引擎对如:javascript、ajax、flash代码生成的内容都没办法很好的抓取。但很多站长都很喜欢这些效果,可是偏偏各大搜索引擎不能很好的抓取这些代码所生成的内容,使得很多站长都放弃了这些效果。
    2014-08-08
  • form表单传递数组数据、php脚本接收的实例

    form表单传递数组数据、php脚本接收的实例

    下面小编就为大家带来一篇form表单传递数组数据、php脚本接收的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • PHP制作3D扇形统计图以及对图片进行缩放操作实例

    PHP制作3D扇形统计图以及对图片进行缩放操作实例

    这篇文章主要介绍了PHP制作3D扇形统计图以及对图片进行缩放操作实例,需要的朋友可以参考下
    2014-10-10
  • 基于MySQL到MongoDB简易对照表的详解

    基于MySQL到MongoDB简易对照表的详解

    本篇文章是对从MySQL到MongoDB的简易对照表进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • layui框架实现文件上传及TP3.2.3(thinkPHP)对上传文件进行后台处理操作示例

    layui框架实现文件上传及TP3.2.3(thinkPHP)对上传文件进行后台处理操作示例

    这篇文章主要介绍了layui框架实现文件上传及TP3.2.3对上传文件进行后台处理操作,结合实例形式分析了layui框架结合thinkPHP进行文件上传与处理操作相关实现技巧,需要的朋友可以参考下
    2018-05-05
  • 三个思路解决laravel上传文件报错:413 Request Entity Too Large问题

    三个思路解决laravel上传文件报错:413 Request Entity Too Large问题

    上传图片的时候,是用laravel自带的上传图片的方法,一下气上传了20张,结果就无情报错:413 Request Entity Too Large,后面查一下,这个报错信息是nginx报的错误,不是php报的错误。也就是说在上传图片的时候被nginx拦截了
    2017-11-11
  • PHP、Java des加密解密实例

    PHP、Java des加密解密实例

    这篇文章主要介绍了PHP、Java des加密解密实例,des加密是对称加密中在互联网应用的比较多的一种加密方式,本文分别给出了PHP和JAVA版本的实现代码,需要的朋友可以参考下
    2015-04-04
  • 详解如何在PHP中使用布隆过滤器

    详解如何在PHP中使用布隆过滤器

    布隆过滤器(Bloom Filter)是一种用于快速判断一个元素是否属于某个集合的概率型数据结构,本文主要为大家介绍一下如何在PHP中使用布隆过滤器,需要的可以参考一下
    2023-06-06
  • 利用PHP如何写APP接口详解

    利用PHP如何写APP接口详解

    很多朋友在开发时遇到过这样的问题:后台什么时候提供接口?怎么才提供一个接口,其他接口什么时候给出来?没有接口我们前端怎么能做得了?那学完本篇就可以自己搞个接口来返回固定的死数据来测试了!
    2016-08-08

最新评论