>  기사  >  백엔드 개발  >  thinkPHP 프레임워크 기반 게시판 구현 방법

thinkPHP 프레임워크 기반 게시판 구현 방법

不言
不言원래의
2018-05-05 15:25:342761검색

이 글에서는 thinkPHP 프레임워크를 기반으로 메시지판을 구현하는 방법을 주로 소개합니다. thinkPHP 프레임워크에서 메시지판을 구현하는 과정을 간략하게 분석하고 관련 컨트롤러 및 모델의 핵심 코드를 참고할 수 있습니다.

이 글에서는 thinkPHP Framework의 게시판 구현 방식을 기반으로 게시판을 구현하는 방법에 대한 예를 설명합니다. 참고하실 수 있도록 자세한 내용은 다음과 같습니다.

하루 고민 끝에 드디어 THINKPHP Xiao Deng의 컨셉 버전이 나왔습니다

사실 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(&#39;<font color=red>标题已经存在</font>&#39;);
      } else {
        $this->success(&#39;标题可以使用!&#39;);
      }
    } else {
      $this->error(&#39;标题必须&#39;);
    }
  }
}

다음은 모델을 검증하는 코드입니다

class wordModel extends Model{
  protected $_validate = array(
   array(&#39;username&#39;, &#39;require&#39;, &#39;称呼必须!&#39;, 1),//1为必须验证
   array(&#39;email&#39;, &#39;email&#39;, &#39;邮箱格式错误!&#39;, 2),//2为不为空时验证
   array(&#39;qq&#39;,&#39;number&#39;,&#39;QQ号错误&#39;,2),
   array(&#39;content&#39;, &#39;require&#39;, &#39;内容必须&#39;,1),
   array(&#39;username&#39;,&#39;&#39;,&#39;称呼已经存在&#39;,0,&#39;unique&#39;,1)
  );
  protected $_auto = array(
   array(&#39;datetime&#39;, &#39;get_date&#39;,1, &#39;callback&#39;),
   array(&#39;ip&#39;,&#39;getip&#39;,1,&#39;callback&#39;)
  );
  protected function get_date()
  {
   return date("Y-m-d H:i:s");
  }
  protected function getip()
  {
   return $_SERVER[&#39;REMOTE_ADDR&#39;];
  }
}

Thinkphp에서는 CURD 연산에서 주의할 점이 하나 있습니다.

관련 권장사항:

ThinkPHP 프레임워크 기반 OAuth20 서비스 구축

위 내용은 thinkPHP 프레임워크 기반 게시판 구현 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.