[thinkPHP5项目实战_15]创建文章读取栏目列表

来源:互联网 发布:三月软件工作室 编辑:程序博客网 时间:2024/05/01 04:56

本文分享在创建文章时读取栏目列表并选择的功能

首先在数据库中添加cateid字段,类型为mediumint

创建文章的页面展示cate代码:

                                    <tr>                                        <th>描述:</th>                                        <td>                                            <select name="cateid">                                            {volist name="cateres" id="vo"}                                                <option value="{$vo.ID}">{$vo.catename}</option>                                            {/volist}                                            </select>                                        </td>                                    </tr>

通过读取cate表获取cate的信息渲染在模板上,在创建文章的add操作方法中读取cate,并写入数据库

    public function add()    {    //reuqest方法继承于Controller,使用request助手函数判断请求方式        //使用助手函数input接收接收输入的值    if(request()->isPost()){    $data = [    'title' => input('title'),    'keywords' => input('keywords'),    'desc' => input('desc'),                'cateid' => input('cateid'),    'content' => input('content'),    'time' => time(),    ];    //判断表单是否上传了文件    if($_FILES['pic']['tmp_name']){    //获取表单上传的文件    $file = request()->file('pic');    // 移动到框架应用根目录/public/uploads/ 目录下    $info = $file->move(ROOT_PATH . 'public' . DS . '/static/uploads');    if($info){        //拼接文件路径        //使用date()方法计算出八位时间,上传到uploads的文件所在的文件名就是这八位时间        //使用$info->getFilename()方法获取文件名        $data['pic'] = '/static/uploads/'.date('Ymd').'/'.$info->getFilename();    }else{        // 上传失败返回错误信息        return $this->error($file->getError());    }    };    //对输入的内容进行验证,使用tp5推荐的验证器的方式    $validate = \think\Loader::validate('Article');    if($validate->check($data)){    //文件上传完毕,表单验证完毕,存入数据库    $res = \think\Db::name('article')->insert($data);                //添加判断,成功则跳转到lists方法                if($res){                    return $this->success('增加文章成功');                }else{                    return $this->error('增加文章失败');                }    }else{                //验证失败输出提示信息                return $this->error($validate->getError());            }    return;    }        //获取cateid        $cateres = db('cate')->select();        $this->assign('cateres',$cateres);//模板赋值        return $this->fetch();    }

即可为文章添加栏目选项

阅读全文
0 0
原创粉丝点击