ホームページ  >  記事  >  バックエンド開発  >  thinkPHPフレームワークに基づいて掲示板を実装する方法

thinkPHPフレームワークに基づいて掲示板を実装する方法

不言
不言オリジナル
2018-05-05 15:25:342737ブラウズ

この記事では、thinkPHP フレームワークに基づいてメッセージ ボードを実装する方法を主に紹介し、thinkPHP フレームワークでメッセージ ボードを実装するプロセスと、コントローラーとモデルの関連コア コードを簡単に分析します。

この記事では、メッセージ ボードを実装するための thinkPHP フレームワークのアプローチに基づいてメッセージ ボードを実装する方法の例について説明します。詳細は以下のとおりです:

1 日苦労した結果、ついに THINKPHP のコンセプト版が完成しました

実際、THINKPHP は「ブリックムーバー」として非常に速く開発されています。 」 インターネット上で、私はこれに従事しています 純粋なプログラマーであることに何も問題はありません。

このコードは次の関数を実装します

1.

2. 検証機能。

3. ページング表示機能。

ほんの数行のコードを書いただけです (追記: ページデザインコードは、コントローラーやモデルコードも含めてカウントされません)

次に、コントローラーのコードを発表します。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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。