摘要:<?php /** * Created by PhpStorm. * Date: 2019/4/6 * Time: 18:36 */ namespace app\admin\controller; //管理员登陆和退出要用到session,需要开启 session_start(); use app\
<?php
/**
* Created by PhpStorm.
* Date: 2019/4/6
* Time: 18:36
*/
namespace app\admin\controller;
//管理员登陆和退出要用到session,需要开启
session_start();
use app\model\User;
use pig\core\Controller;
class Index extends Controller
{
public function __construct()
{
parent::__construct();
}
//用户信息列表
public function index()
{
// $rows = (new User())->select('user',['id','name','email','dept','art','create_time']);
// print_r($rows);
$rows = (new User())->select('user',[
'id','name','email','dept','art','create_time'],[
//搜索功能,搜索条件为空显示全部
// 'dept[~]'=> isset($_POST['dept']) ? $_POST['dept'] : null
'art[~]'=> isset($_POST['art']) ? $_POST['art'] : null
]);
return $this->view->render('admin::index/index',[
'rows' =>$rows,
'title' => '武林高手榜',//标题
'loginUrl' => '/admin/index/login',//登陆
'logoutUrl' => '/admin/index/logout', //退出
'indexUrl' => '/admin/index/index',//首页
'insUrl' => '/admin/index/insert',//添加
'editUrl' => '/admin/index/edit',//更新
'delUrl' => '/admin/index/delete',//删除
]);
}
//管理员登录
public function login()
{
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
//验证用户
$res = (new User())->get('admin', ['name','email','password'],[
'AND' => [
'email' => $_POST['email'],
'password' => sha1($_POST['password']),
]
]);
if(false === $res){
echo "<script>alert('邮箱或密码不正确');location.href='/admin/index/index';</script>";
} else {
$_SESSION['name'] = $res['name'];
echo "<script>alert('登陆成功');location.href='/admin/index/index';</script>";
}
}
}
//退出登陆
public function logout(){
session_destroy();
echo "<script>alert('退出成功');location.href='/admin/index/index';</script>";
}
//添加数据:1.渲染出一个添加表单;2.执行添加操作
public function insert(){
//调用模板引擎view中的render方法,admin::index/insert:渲染模板admin中index下的insert方法
return $this->view->render('admin::index/insert',[
'title' => '添加记录',
'url' => '/admin/index/add' //insert模板中接收数据提交地址
]);
}
//执行添加操作
public function add()
{
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
//执行添加操作
(new User())->insert('user',[
'name'=>$_POST['name'],
'dept'=>$_POST['dept'],
'email'=>$_POST['email'],
'art'=>$_POST['art'],
'create_time'=>time(),
]);
echo "<script>alert('添加成功');location.href='/admin/index/index';</script>";
}
}
//编辑操作:1.渲染编辑模板,获取编辑ID;2.执行操作
public function edit($id='')
{
$row = (new User())->get('user',['id','name','dept','email','art'],['id'=>$id]);
return $this->view->render('admin::index/edit',[
'title'=>'更新用户信息',
'url'=>'/admin/index/save',
'row'=>$row,
]);
}
//执行编辑
public function save($id)
{
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
//执行更新操作
(new User())->update('user',[
'name'=>$_POST['name'],
'dept'=>$_POST['dept'],
'email'=>$_POST['email'],
'art'=>$_POST['art'],
],['id'=>$id]);
echo "<script>alert('更新成功');location.href='/admin/index/index';</script>";
}
}
//删除操作
public function delete($id)
{
(new User())->delete('user',['id'=>$id]);
echo "<script>alert('删除成功');location.href='/admin/index/index';</script>";
}
}通过本套课程的学习,明白了PHP开发的基本框架和思路,明天正式开启tp5.1的学习和实战,感谢老师的辛勤付出。
批改老师:天蓬老师批改时间:2019-04-13 21:50:13
老师总结:能理解这个小框架的基本思路, 对于理解与熟练运用现代主流开发框架, 非常有好处的.
自己学会手写框架,并不是为了去用它开发项目, 毕竟你的框架再好, 没有海量的用户也无法成为行业标准, 但掌握框架的运行流程, 仍很重要...