
*============在公共模板的左侧列表 增加友情链接列表==============↓ D:\phpStudy\WWW\niwo\application\admin\view\common\left.html 复制内容: <li> <a href="#" class="menu-dropdown"> <i class="menu-icon fa fa-gear"></i> <span class="menu-text">系统</span> <i class="menu-expand"></i> </a> <ul class="submenu"> <li> <a href="/admin/document/index.html"> <span class="menu-text"> 配置 </span> <i class="menu-expand"></i> </a> </li> </ul> </li> 修改内容: <li> <a href="#" class="menu-dropdown"> <i class="menu-icon fa fa-gear"></i> <span class="menu-text">友情链接</span> <i class="menu-expand"></i> </a> <ul class="submenu"> <li> <a href="/admin/document/index.html"> <span class="menu-text"> 链接列表 </span> <i class="menu-expand"></i> </a> </li> </ul> </li> <li> <a href="#" class="menu-dropdown"> <i class="menu-icon fa fa-gear"></i> <span class="menu-text">系统</span> <i class="menu-expand"></i> </a> <ul class="submenu"> <li> <a href="/admin/document/index.html"> <span class="menu-text"> 配置 </span> <i class="menu-expand"></i> </a> </li> </ul> </li> http://127.0.0.1/niwo/public/index.php/admin *============在公共模板的左侧列表 增加友情链接列表==============↑
*============修改友情链接的图标==============↓ http://www.yidt.cn/Home/FontAwesome 右键点击要修改的图标,在弹出的菜单中,选择检查按钮,在右侧的调试信息中,找的该图标的class,并修改: 比如,把 <i class="menu-icon fa fa-anchor"></i> <span class="menu-text">友情链接</span> 修改为: <i class="menu-icon fa fa-bolt"></i> <span class="menu-text">友情链接</span> 其中,可供选择的图标,可以在Dashboard Elements Icons FontAwesome中找到。 *============修改友情链接的图标==============↑
*============在数据库创建tp_links 列表的字段信息==============↓ 新建数据表 名字: tp_links 字段数: 4 编辑字段信息: 名字 id 类型 MEDIUMINT 索引 PRIMARY A_I(自增) 勾选 注释 链接id 名字 title 类型 VARCHAR 长度/值 30 注释 链接标题 名字 url 类型 VARCHAR 长度/值 60 注释 链接地址 名字 desc 类型 VARCHAR 长度/值 255 注释 链接说明 存储引擎 MyISAM 点击 保存 *============在数据库创建tp_links 列表的字段信息===============↑
*============在控制器下、模块下、验证器下、创建友情链接文件和文件夹==============↓ D:\phpStudy\WWW\niwo\application\admin\controller 复制Admin.php文件,重命名Links.php D:\phpStudy\WWW\niwo\application\admin\model 复制Admin.php文件,重命名Links.php D:\phpStudy\WWW\niwo\application\admin\validate 复制Admin.php文件,重命名Links.php D:\phpStudy\WWW\niwo\application\admin\view 复制Admin文件夹,重命名links文件夹 *============在控制器下、模块下、验证器下、创建友情链接文件和文件夹==============↑
*============修改控制器下 修改友情链接文件==============↓ D:\phpStudy\WWW\niwo\application\admin\controller\Links.php 原内容 <?php namespace app\admin\controller; use think\Controller; use app\admin\model\Admin as AdminModel; // 引入model类、位置、名称有重名的要改名字 class Admin extends Controller { public function lst() { $list = AdminModel::paginate(3);// 分页输出列表 每页显示3条数据 $this ->assign('list',$list); // 把$list,分配到模板list return $this->fetch();//把数据返回给视图。 } // public function lst() // { // return $this->fetch(); // } public function add() { if(request()->isPost()){ $data=[ 'username'=>input('username'), 'password'=>input('password'), ]; $validate = \think\Loader::validate('Admin');//实例化validate if(!$validate->scene('add')->check($data)){ //在add场景下,验证$data里面的数据,如果验证没有通过 $this->error($validate->getError()); die; //获取错误信息并打印。 } if(db('admin')->insert($data)){ return $this->success('添加管理员成功!','lst'); }else{ return $this->error('添加管理员失败!'); } return; } return $this->fetch(); } public function edit(){ $id = input('id'); //把网页提交过来的id数据,存储在$id里。 $admins = db('admin')->find($id);// 在数据库的admin表单,以id为字段进行查找。把找到的数据,存储到$admins if(request()->isPost()){ // 处理表单数据(判断是否以表单提交数据->post是从表单提交数据) $data = [ // 接收数据以数组格式 'id' =>input('id'), 'username' =>input('username'), 'password' =>input('password'), ]; if(input('password')){ // 如果修改管理员密码 $data['password'] = md5(input('password')); // 在$data数组中修改,然后加密 }else{ $data['password'] = $admins['password']; // 否则密码留空,用原有密码 } $validate = \think\Loader::validate('Admin'); if(!$validate->scene('edit')->check($data)){ // 在编辑场景验证 $this->error($validate->getError()); die; } if(db('admin')->update($data)){ // 将数据库的admin表格修改成数组$data形式 $this->success('修改管理员成功!','lst'); }else{ $this->error('修改管理员失败!'); } return; // 要处理数据,return下面的就不显示 } $this->assign('admins',$admins); // 分配显示在模板中(分配到模板中的值,值等于$admins/这两个要对应) return $this->fetch(); } public function del(){ // 删除的方法 $id = input('id'); //把网页提交过来的id数据,存储在$id里 if($id != 1) { // 如果$id不等于1 if (db('admin')->delete(input('id'))) { //在数据库的admin表单,删除以id为字段数据内容。 $this->success('删除管理员成功!', 'lst'); } else { $this->error('删除管理员失败!'); } }else{ $this->error('初始化管理员不能删除!'); } } } 修改内容: 把大部分的admin修改成了Links <?php namespace app\admin\controller; use think\Controller; use app\admin\model\Links as LinksModel; // 引入model类、位置、名称有重名的要改名字 class Links extends Controller { public function lst() { $list = LinksModel::paginate(3);// 分页输出列表 每页显示3条数据 $this ->assign('list',$list); // 分配到模板名称为list,值就是获取到的 return $this->fetch(); } public function add() { if(request()->isPost()){ $data=[ 'username'=>input('username'), 'password'=>input('password'), ]; $validate = \think\Loader::validate('Links'); if(!$validate->scene('add')->check($data)){ $this->error($validate->getError()); die; } if(db('Links')->insert($data)){ return $this->success('添加管理员成功!','lst'); }else{ return $this->error('添加管理员失败!'); } return; } return $this->fetch(); } public function edit(){ $id = input('id'); $Linkss = db('Links')->find($id);// 将数据库的Links表格修改成数组$data形式 if(request()->isPost()){ // 处理表单数据(判断是否以表单提交数据->post是从表单提交数据) $data = [ // 接收数据以数组格式 'id' =>input('id'), 'username' =>input('username'), 'password' =>input('password'), ]; if(input('password')){ // 如果修改管理员密码 $data['password'] = md5(input('password')); // 在$data数组中修改,然后加密 }else{ $data['password'] = $Linkss['password']; // 否则密码留空,用原有密码 } $validate = \think\Loader::validate('Links'); if(!$validate->scene('edit')->check($data)){ // 在编辑场景验证 $this->error($validate->getError()); die; } if(db('Links')->update($data)){ // 将数据库的Links表格修改成数组$data形式 $this->success('修改管理员成功!','lst'); }else{ $this->error('修改管理员失败!'); } return; // 要处理数据,return下面的就不显示 } $this->assign('Linkss',$Linkss); // 分配显示在模板中(分配到模板中的值,值等于$Linkss/这两个要对应) return $this->fetch(); } public function del(){ // 删除的方法 $id = input('id'); // 把input('id')赋值给$id if($id != 1) { // 如果$id不等于1 if (db('Links')->delete(input('id'))) { $this->success('删除管理员成功!', 'lst'); } else { $this->error('删除管理员失败!'); } }else{ $this->error('初始化管理员不能删除!'); } } } *============修改控制器下、修改友情链接文件==============↑
*============验证器下 修改友情链接文件==============↓ D:\phpStudy\WWW\niwo\application\admin\model\Links.php 修改内容: <?php namespace app\admin\model; use think\Model; // 引入模型这个类 class Links extends Model // 继承模型这个类 { } D:\phpStudy\WWW\niwo\application\admin\validate\Links.php 原内容 class Admin extends Validate // 继承引用过来的类 修改为: class Links extends Validate // 继承引用过来的类 *============验证器下 修改友情链接文件==============↑
*============修改公共文件下的left文件==============↓ D:\phpStudy\WWW\niwo\application\admin\view\common\left.html 原内容 <li> <a href="/admin/document/index.html"> <span class="menu-text"> 链接列表 </span> <i class="menu-expand"></i> </a> </li> 修改为: <li> <a href="{:url('links/lst')}"> <span class="menu-text"> 链接列表 </span> <i class="menu-expand"></i> </a> </li> *============修改公共文件下的left文件==============↑
*============修改视图里友情链接的查找和添加==============↓ D:\phpStudy\WWW\niwo\application\admin\view\links\lst.html 修改为: <div class="page-breadcrumbs"> <ul class="breadcrumb"> <li> <a href="#">系统</a> </li> <li class="active">链接管理</li> </ul> </div> D:\phpStudy\WWW\niwo\application\admin\view\links\lst.html 把“用户”全部替换成“连接” 修改内容: <button type="button" tooltip="添加连接" class="btn btn-sm btn-azure btn-addon" onClick="javascript:window.location.href = '{:url('Links/add')}'"> <i class="fa fa-plus"></i> Add </button> D:\phpStudy\WWW\niwo\application\admin\view\links\add.html 把“管理员”全部替换成“连接” *============修改视图里友情链接的查找和添加==============↑
*============修改视图里的友情链接和添加文件样式==============↓ D:\phpStudy\WWW\niwo\application\admin\view\links\add.html 修改内容: <!-- Page Breadcrumb --> <div class="page-breadcrumbs"> <ul class="breadcrumb"> <li> <a href="#">系统</a> </li> <li> <a href="{:url('links/lst')}">连接管理</a> </li> <li class="active">添加连接</li> </ul> </div> 原内容 <div class="form-group"> <label for="username" class="col-sm-2 control-label no-padding-right">连接名</label> <div class="col-sm-6"> <input class="form-control" id="username" placeholder="" name="username" | type="text"> </div> <p class="help-block col-sm-4 red">* 必填</p> </div> <div class="form-group"> <label for="group_id" class="col-sm-2 control-label no-padding-right">连接密码</label> <div class="col-sm-6"> <input class="form-control" id="password" placeholder="" name="password" |type="text"> </div> <p class="help-block col-sm-4 red">* 必填</p> </div> <div class="form-group"> <div class="col-sm-offset-2 col-sm-10"> <button type="submit" class="btn btn-default">保存信息</button> </div> 修改为: <div class="form-group"> <label for="username" class="col-sm-2 control-label no-padding-right">连接标题</label> <div class="col-sm-6"> <input class="form-control" id="username" placeholder="" name="username" | type="text"> </div> <p class="help-block col-sm-4 red">* 必填</p> </div> <div class="form-group"> <label for="group_id" class="col-sm-2 control-label no-padding-right">连接地址</label> <div class="col-sm-6"> <input class="form-control" id="password" placeholder="" name="password" |type="text"> </div> <p class="help-block col-sm-4 red">* 必填</p> </div> <div class="form-group"> <label for="group_id" class="col-sm-2 control-label no-padding-right">连接描述</label> <div class="col-sm-6"> <textarea></textarea> </div> </div> <div class="form-group"> <div class="col-sm-offset-2 col-sm-10"> <button type="submit" class="btn btn-default">保存信息</button> </div> // 连接描述的样式 </div> <div class="col-sm-6"> <textarea class="form-control" ></textarea> </div> *============修改视图里的友情链接和添加文件样式==============↑
*============修改视图里友情链接和添加文件发送的数据==============↓ D:\phpStudy\WWW\niwo\application\admin\view\links\add.html 原内容 <div class="form-group"> <label for="username" class="col-sm-2 control-label no-padding-right">连接标题</label> <div class="col-sm-6"> <input class="form-control" id="username" placeholder="" name="username" | type="text"> </div> <p class="help-block col-sm-4 red">* 必填</p> </div> <div class="form-group"> <label for="group_id" class="col-sm-2 control-label no-padding-right">连接地址</label> <div class="col-sm-6"> <input class="form-control" id="password" placeholder="" name="password" |type="text"> </div> <p class="help-block col-sm-4 red">* 必填</p> </div> <div class="form-group"> <label for="group_id" class="col-sm-2 control-label no-padding-right">连接描述</label> <div class="col-sm-6"> <textarea class="form-control" ></textarea> </div> 修改内容: <div class="form-group"> <label for="username" class="col-sm-2 control-label no-padding-right">连接标题</label> <div class="col-sm-6"> <input class="form-control" id="title" placeholder="" name="title" | type="text"> </div> <p class="help-block col-sm-4 red">* 必填</p> </div> <div class="form-group"> <label for="group_id" class="col-sm-2 control-label no-padding-right">连接地址</label> <div class="col-sm-6"> <input class="form-control" id="url" placeholder="" name="url" |type="text"> </div> <p class="help-block col-sm-4 red">* 必填</p> </div> <div class="form-group"> <label for="group_id" class="col-sm-2 control-label no-padding-right">连接描述</label> <div class="col-sm-6"> <textarea name = "desc" class="form-control" ></textarea> </div> D:\phpStudy\WWW\niwo\application\admin\controller\Links.php 原内容 if(request()->isPost()){ $data=[ 'username'=>input('username'), 'password'=>input('password'), ]; $validate = \think\Loader::validate('Links'); if(!$validate->scene('add')->check($data)){ $this->error($validate->getError()); die; } if(db('Links')->insert($data)){ return $this->success('添加管理员成功!','lst'); }else{ return $this->error('添加管理员失败!'); } return; 修改为: if(request()->isPost()){ $data=[ 'title'=>input('title'), 'url'=>input('url'), 'desc'=>input('desc'), ]; $validate = \think\Loader::validate('Links'); if(!$validate->scene('add')->check($data)){ $this->error($validate->getError()); die; } if(db('Links')->insert($data)){ return $this->success('添加链接成功!','lst'); }else{ return $this->error('添加链接失败!'); } return; D:\phpStudy\WWW\niwo\application\admin\view\links\lst.html 原内容 <table class="table table-bordered table-hover"> <thead class=""> <tr> <th class="text-center"width="4%">ID</th> <th class="text-center"width="70%">连接名称</th> <th class="text-center"width="14%">操作</th> </tr> </thead> <tbody> {volist name="list" id="vo"} <tr> <td align="center">{$vo.id}</td> <td align="center">{$vo.username}</td> 修改为: <table class="table table-bordered table-hover"> <thead class=""> <tr> <th class="text-center"width="4%">ID</th> <th class="text-center">连接名称</th> <th class="text-center">连接地址</th> <th class="text-center">连接描述</th> <th class="text-center"width="14%">操作</th> </tr> </thead> <tbody> {volist name="list" id="vo"} <tr> <td align="center">{$vo.id}</td> <td align="center">{$vo.title}</td> <td align="center">{$vo.url}</td> <td align="center">{$vo.desc}</td> http://127.0.0.1/niwo/public/index.php/admin/links/lst.html 就不会报错了 *============修改视图里友情链接和添加文件发送的数据==============↑
*============把视图里友情链接连接和地址变成网址==============↓ D:\phpStudy\WWW\niwo\application\admin\view\links\lst.html 原内容 <tr> <td align="center">{$vo.id}</td> <td align="center">{$vo.title}</td> <td align="center">{$vo.url}</td> <td align="center">{$vo.desc}</td> <td align="center"> <a href="{:url('admin/edit',array('id'=>$vo['id']))}" class="btn btn-primary btn-sm shiny"> <i class="fa fa-edit"></i> 编辑 </a> {if condition="$vo['id'] neq 1"} <a href="#" onClick="warning('确实要删除吗', '{:url('admin/del',array('id'=>$vo['id']))}" class="btn btn-danger btn-sm shiny"> <i class="fa fa-trash-o"></i> 删除 </a> {/if} </td> </tr> 修改为: <tr> <td align="center">{$vo.id}</td> <td align="center">{$vo.title}</td> <td align="center"><a href="{$vo.url}" target="_black">{$vo.url}</a></td> <td align="center">{$vo.desc}</td> <td align="center"> <a href="{:url('admin/edit',array('id'=>$vo['id']))}" class="btn btn-primary btn-sm shiny"> <i class="fa fa-edit"></i> 编辑 </a> {if condition="$vo['id'] neq 1"} <a href="#" onClick="warning('确实要删除吗', '{:url('admin/del',array('id'=>$vo['id']))}" class="btn btn-danger btn-sm shiny"> <i class="fa fa-trash-o"></i> 删除 </a> {/if} </td> </tr> *============把视图里友情接链接连和地址变成网址==============↑
*============验证、验证器里的友情链接==============↓ D:\phpStudy\WWW\niwo\application\admin\validate\Links.php 修改为: <?php namespace app\admin\validate; use think\Validate; // 引入了空间类文件 class Links extends Validate // 继承引用过来的类 { // 验证规则就写在这个数组里面 protected $rule = [ 'title' => 'require|max:25', 'url' => 'require', ]; // 错误提示 protected $message = [ 'title.require' => '链接标题必须填写', 'title.max' => '链接的标题长度不能大于25位', 'url.require' => '链接的地址必须填写', ]; // 验证 scene 场景 protected $scene = [ 'add' => ['title','url'], // 在添加场景限定[]里的验证 'edit' => ['title','url'], ]; } D:\phpStudy\WWW\niwo\application\admin\view\links\lst.html 原内容 <td align="center"><a href="{$vo.url}" target="_black">{$vo.url}</a></td> <td align="center">{$vo.desc}</td> 修改为: <td align="center"><a href="{$vo.url}" target="_black">{$vo.url}</a></td> <td align="center"> {if condition="$vo['desc'] neq ''"} {$vo.desc} {else /} 暂无描述 {/if} </td> 修改隐藏界面 原内容 <a href="{:url('admin/edit',array('id'=>$vo['id']))}" class="btn btn-primary btn-sm shiny"> <i class="fa fa-edit"></i> 编辑 </a> {if condition="$vo['id'] neq 1"} <a href="#" onClick="warning('确实要删除吗', '{:url('admin/del',array('id'=>$vo['id']))}" class="btn btn-danger btn-sm shiny"> <i class="fa fa-trash-o"></i> 删除 </a> {/if} 修改为: <a href="{:url('admin/edit',array('id'=>$vo['id']))}" class="btn btn-primary btn-sm shiny"> <i class="fa fa-edit"></i> 编辑 </a> <a href="#" onClick="warning('确实要删除吗', '{:url('admin/del',array('id'=>$vo['id']))}" class="btn btn-danger btn-sm shiny"> <i class="fa fa-trash-o"></i> 删除 </a> *============验证、验证器里的友情链接==============↑
文章来源: Thinkphp学习笔记——添加友情链接(一)
人吐槽 | 人点赞 |
发表评论