" name="description" /> " />

Thinkphp学习笔记——添加友情链接(一)

*============在公共模板的左侧列表 增加友情链接列表==============↓
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学习笔记——添加友情链接(一)

人吐槽 人点赞

猜你喜欢

发表评论

用户名: 密码:
验证码: 匿名发表

你可以使用这些语言

查看评论:Thinkphp学习笔记——添加友情链接(一)