1.栏目添加界面处理
phpstudy打开phpmyadmin,账号密码root
使用助手函数url进行链接跳转
创建yoome数据库和ym_cate数据表,更改配置了database.php(用户名:youme,password:root,prefix:ym_)
2.栏目的添加及验证
(1)数据的插入
<?php
namespace app\admin\controller;
use think\Controller;
class Cate extends Controller
{
public function lst()
{
return $this->fetch();
}
public function add()
{
if(request()->isPost()){
$data=[
'catename'=>input('catename');
'keywords'=>input('keywords');
'desc'=>input('desc');
'type'=>input('type') ? input("type") : 0;
];
$validate = loader::validate('Cate');
if($validate->check($data)){
$db=\think\Db::name('cate')->insert($data);
if($db){
return $this->success('添加栏目成功!','lst');
}else{
return $this->error('添加栏目列表失败!');
}
}else{
return $this->error($validate->getError());
}
return;
}
return $this->fetch();
}
}
(2)验证方法
<?php
namespace app\admin\validate;
use think\Validate;
class User extends Validate
{
protected $rule = [
'name' => 'require|max:25',
'age' => 'number|between:1,120',
'email' => 'email',
];
protected $message = [
'name.require' => '名称必须',
'name.max' => '名称最多不能超过25个字符',
'age.number' => '年龄必须是数字',
'age.between' => '年龄只能在1-120之间',
'email' => '邮箱格式错误',
];
}
记得给数据中的id添加默认值0
3.栏目列表及删除
(1)数据查询
查询一个数据使用:(返回结果为一维数组)
// table方法必须指定完整的数据表名
<?phpDb::table('think_user')->where('id',1)->find();
find 方法查询结果不存在,返回 null
查询数据集使用:(返回结果为二维数组)
<?phpDb::table('think_user')->where('status',1)->select();
(2)使用模板内置标签,循环输出标签
<?php
{volist name='cateres' id='vo'}
<tr>
<td>{$vo.id}</td>
<td title="{$vo.catename}"><a target="_blank" href="#" title="{$vo.catename}">发哥经典</a>
</td>
<td>
{if condition="$vo['type'] eq 0"}
列表栏目
{else /}
留言板
{/if}
</td>
<td>
<a class="link-update" href="#">修改</a>
<a class="link-del" href="#">删除</a>
</td>
</tr>
?>
(3)栏目的删除
添加在控制器下
<?php
public function del(){
$id=input('id');
if(db('cate')->delete($id)){
return $this->success('删除栏目成功!','lst');
}else{
return $this->error('删除栏目失败!');
}
?>
4栏目修改
<?php
namespace app\admin\controller;
use think\Controller;
class Cate extends Controller
{
public function lst()
{
$cateres=\think\Db::name('cate')->select();
$this->assign('cateres',$cateres);
return $this->fetch();
}
public function add()
{
if(request()->isPost()){
$data=[
'catename'=>input('catename'),
'keywords'=>input('keywords'),
'desc'=>input('desc'),
'type'=>input('type') ? input('type') : 0,
];
$validate = \think\Loader::validate('Cate');
if($validate->check($data)){
$db=\think\Db::name('cate')->insert($data);
if($db){
return $this->success('添加栏目成功!','lst');
}else{
return $this->error('添加栏目失败!');
}
}else{
return $this->error($validate->getError());
}
return;
}
return $this->fetch();
}
public function edit(){
if(request()->isPost()){
$data=[
'id'=>input('id'),
'catename'=>input('catename'),
'keywords'=>input('keywords'),
'desc'=>input('desc'),
'type'=>input('type'),
];
if($db=\think\Db::name('cate')->update($data)){
return $this->success('修改栏目成功!','lst');
}else{
return $this->error('修改栏目失败!');
}
return;
}
$id=input('id');
$cates=db('cate')->where('id',$id)->find();
$this->assign('cates',$cates);
return $this->fetch();
public function del(){
$id=input('id');
if(db('cate')->delete($id)){
return $this->success('删除栏目成功!','lst');
}else{
return $this->error('删除栏目失败!');
}
}
}