php编程学习吧 关注:4贴子:82

Thinkphp 3.2.3 留言板

取消只看楼主收藏回复

本帖将示范如何用Thinkphp 3.2.3做一个小小的留言板


IP属地:浙江1楼2017-08-10 15:35回复
    建库建表
    drop database if exists guest_book;
    create database guest_book charset utf8;
    use guest_book;
    drop table if exists `guest_book`;
    create table `guest_book` (
    `id` int(10) unsigned not null auto_increment,
    `name` varchar(20) not null default '' comment '姓名',
    `email` varchar(30) not null default '' comment '邮箱',
    `content` varchar(200) not null default '' comment '内容',
    `add_time` datetime not null default '0000-00-00 00:00:00',
    primary key (`id`)
    ) engine=innodb default charset=utf8 comment='留言表';


    IP属地:浙江2楼2017-08-10 15:36
    回复
      得到数据库如下


      IP属地:浙江3楼2017-08-10 15:38
      回复
        然后去下载Thinkphp 3.2.3 完整版
        下载地址 http://www.thinkphp.cn/down/610.html


        IP属地:浙江4楼2017-08-10 15:39
        回复
          think 下载到我们需要的目录下

          进行解压


          IP属地:浙江5楼2017-08-10 15:41
          回复
            然后运行 http://localhost/tp_guest_book/


            IP属地:浙江6楼2017-08-10 15:42
            回复
              然后配置链接数据库的文件

              然后添加一系列数据库连接配置
              <?php
              return array(
              //'配置项'=>'配置值'
              'DB_TYPE' => 'mysql', // 数据库类型
              'DB_HOST' => '127.0.0.1', // 服务器地址
              'DB_NAME' => 'guest_book', // 数据库名
              'DB_USER' => 'root', // 用户名
              'DB_PWD' => '', // 密码
              'DB_PORT' => '3306', // 端口
              'DB_PREFIX' => '', // 数据库表前缀
              );
              效果如图


              IP属地:浙江7楼2017-08-10 15:45
              回复
                更改首页的控制器文件

                打开文件如图

                删除$this->show这一行


                IP属地:浙江8楼2017-08-10 15:47
                回复
                  开始添加从数据库中读取留言并赋值到模板中,然后加载模板
                  改为这样
                  <?php
                  namespace Home\Controller;
                  use Think\Controller;
                  class IndexController extends Controller {
                  public function index(){
                  $list=M("guest_book")->select();//从数据库读取留言
                  $this->assign("list",$list);//分配留言列表到模板中
                  $this->display();//加载模板
                  }
                  }


                  IP属地:浙江9楼2017-08-10 15:48
                  回复
                    然后放置静态资源文件

                    这个文件夹下存放我们的js css


                    IP属地:浙江10楼2017-08-10 15:50
                    回复
                      然后再模板文件夹下面放文件

                      创建Index文件夹 创建index.html文件


                      IP属地:浙江11楼2017-08-10 15:52
                      回复
                        这个模板文件内容这样写
                        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
                        <html lang="en">
                        <head>
                        <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
                        <link rel="stylesheet" href="__PUBLIC__/style/bootstrap.min.css">
                        <title>bootstrap留言板</title>
                        </head>
                        <style>
                        th{
                        text-align:center;
                        }
                        </style>
                        <body>
                        <nav class="navbar navbar-inverse" role="navigation">
                        <div class="navbar-header">
                        <a class="navbar-brand">bootstrap留言板</a>
                        </div>
                        <div>
                        <ul class="nav navbar-nav">
                        <li class="active"><a href="index.html">留言列表</a></li>
                        </ul>
                        </div>
                        </nav>
                        <div class="container">
                        <div class="col-md-4"></div>
                        <div class="col-md-5"><h1>留言列表</h1></div>
                        <div class="col-md-4"></div>
                        <table class='table table-hover table-bordered table-striped'>
                        <thead>
                        <tr>
                        <th>姓名</th>
                        <th>邮箱</th>
                        <th>内容</th>
                        <th>操作</th>
                        </tr>
                        </thead>
                        <tbody>
                        <volist name="list" id="vo">
                        <tr align="center">
                        <td>{$vo['name']}</td>
                        <td>{$vo['email']}</td>
                        <td>{$vo['content']}</td>
                        <td>{$vo['add_time']}</td>
                        </tr>
                        </volist>
                        </tbody>
                        </table>
                        <a href="{:U('/Home/Index/add')}" class='btn btn-primary'>添加留言</a>
                        </div>
                        </body>
                        </html>


                        IP属地:浙江12楼2017-08-10 15:52
                        回复
                          然后留言列表就有了


                          IP属地:浙江13楼2017-08-10 15:53
                          回复
                            添加留言
                            添加留言在Index控制器中书写添加方法

                            代码如下
                            <?php
                            namespace Home\Controller;
                            use Think\Controller;
                            class IndexController extends Controller {
                            public function index(){
                            $list=M("guest_book")->select();//从数据库读取留言
                            $this->assign("list",$list);//分配留言列表到模板中
                            $this->display();//加载模板
                            }
                            public function add(){
                            if(IS_POST)
                            {
                            $data['name']=isset($_POST['name'])?$_POST['name']:"";
                            $data['email']=isset($_POST['email'])?$_POST['email']:"";
                            $data['content']=isset($_POST['content'])?$_POST['content']:"";
                            $data['add_time']=date("Y-m-d H:i:s");
                            $add_result=M("guest_book")->add($data);
                            if($add_result)
                            {
                            $this->success("添加成功",U('/Home/Index/index'));
                            }else{
                            $this->error("添加失败");
                            }
                            exit;
                            }
                            $this->display();
                            }
                            }
                            截图如下


                            IP属地:浙江14楼2017-08-10 15:55
                            回复
                              然后在模板下添加add模板

                              add.html模板里面内容这样写
                              <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
                              <html lang="en">
                              <head>
                              <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
                              <link rel="stylesheet" href="__PUBLIC__/style/bootstrap.min.css">
                              <title>bootstrap留言板</title>
                              </head>
                              <style>
                              th{
                              text-align:center;
                              }
                              </style>
                              <body>
                              <nav class="navbar navbar-inverse" role="navigation">
                              <div class="navbar-header">
                              <a class="navbar-brand">bootstrap留言板</a>
                              </div>
                              <div>
                              <ul class="nav navbar-nav">
                              <li class="active"><a href="index.html">留言列表</a></li>
                              </ul>
                              </div>
                              </nav>
                              <div class="container">
                              <h1>添加留言</h1>
                              <form action="{:U('/Home/Index/add')}" method='post'>
                              <table class='table table-hover table-bordered table-striped'>
                              <tr>
                              <td>姓名:</td>
                              <td><input type="text" name='name' class="form-control"></td>
                              </tr>
                              <tr>
                              <td>邮箱:</td>
                              <td><input type="text" name='email' class="form-control"></td>
                              </tr>
                              <tr>
                              <td>内容:</td>
                              <td><textarea name="content" cols="80" rows="10" class="form-control"></textarea></td>
                              </tr>
                              <tr>
                              <td colspan="2">
                              <input type="submit" value="添加留言" class="btn btn-success review" style="margin-left:100px;">
                              <input type="reset" value="清空重置" class="btn btn-danger review" >
                              </td>
                              </tr>
                              </table>
                              </form>
                              </div>
                              </body>
                              </html>


                              IP属地:浙江15楼2017-08-10 15:57
                              回复