abstrak:系統(tǒng)的控制器代碼如下 <?php namespace app\admin\controller; use pig\core\Controller; use app\model\User; session_start(); class Index extends Controller { publ
系統(tǒng)的控制器代碼如下 <?php namespace app\admin\controller; use pig\core\Controller; use app\model\User; session_start(); class Index extends Controller { public function __construct() { parent::__construct(); } //測試訪問路由就訪問到這個方法 public function demo($name='真的是') { echo $name; } //演示模板引擎的使用 public function testView() { //變量 $site = 'ipnx.cn'; //數(shù)組 $courses = ['php','java','python']; //對象 $lecture = new \stdClass();//命名空間是根目錄 $lecture->name = '滅絕師太'; $lecture->age = 24; $lecture->course='前端開發(fā)'; //測試是否能解析變量 $this->assign('site',$site);//這是自己寫的賦值和渲染模板在controller里面 $this->assign('courses',$courses); $this->assign('lecture',$lecture); //渲染模板,自己寫的 $this->fetch(__DIR__.'/../view/index/testView.php'); } //獲取用戶信息列表 public function index() { $rows = (new User())->select('user',['id','name','sex','age','phone','email','birthday'],[ //搜索功能,如果用戶提交了搜索條件就根據(jù)條件搜索,否則顯示全部 'name[~]'=>isset($_POST['name']) ? $_POST['name'] : null //name[~]表示搜索字段的某一個字符就行 ]); //調(diào)用plates模板引擎進(jìn)行模板賦值和模板渲染 $this->view調(diào)用模板 //render()的第二個參數(shù)就是我們所要傳遞的數(shù)據(jù) return $this->view->render('admin::index/index',[ 'rows'=>$rows, 'title'=>'生日信息表', 'loginUrl'=>'admin/Index/login',//登錄 'logoutUrl'=>'admin/Index/logout',//退出登錄 'indexUrl'=>'/frame_project/',//返回首頁 'insUrl'=>'admin/Index/insert',//添加操作 'editUrl'=>'admin/Index/edit',//編輯操作 'delUrl'=>'admin/Index/delete',//刪除操作 ]);//admin是一個路徑,在controller里面設(shè)置了這里調(diào)用需要加:: } //管理員登錄 public function login() { if($_SERVER['REQUEST_METHOD']=='POST'){//判斷是否是post提交的數(shù)據(jù) //驗證用戶 $user=$_POST['name']; $pass=$_POST['password']; $res = (new User())->get('admin',['name','email','password'],[ 'AND'=>['name'=>$user, 'password'=>$pass,]]); if($res==null){ echo "<script>alert('姓名或密碼不正確');location.href='/frame_project/';</script>"; }else{ $_SESSION['name']=$res['name'];//將姓名保存到session,方便下次打開頁面是做判斷 echo "<script>alert('登錄成功');location.href='/frame_project/';</script>"; } } } //退出登錄 public function logout() { session_destroy();//銷毀session echo "<script>alert('退出成功');location.href='/frame_project/';</script>"; } //添加數(shù)據(jù)分兩步:1.渲染出一個添加表單,2.將數(shù)據(jù)寫入表中 public function insert() { return $this->view->render('admin::index/insert',[ 'title'=>'添加記錄', 'url'=>'/frame_project/admin/Index/add', ]); } //添加操作 public function add() { if($_SERVER['REQUEST_METHOD']=='POST'){ //執(zhí)行添加操作 (new User())->insert('user',[ 'name'=>$_POST['name'], 'sex'=>$_POST['sex'], 'age'=>$_POST['age'], 'phone'=>$_POST['phone'], 'email'=>$_POST['email'], 'birthday'=>$_POST['birthday'], ]); echo "<script>alert('添加成功');location.href='/frame_project/';</script>"; } } //編輯操作 public function edit($id='') { $row = (new User())->get('user',['id','name','sex','age','phone','email','birthday'],[ 'AND'=>['id'=>$id]]); return $this->view->render('admin::index/edit',[ 'title'=>'編輯用戶', 'url'=>'/frame_project/admin/Index/save', 'row'=>$row, ]); } //執(zhí)行更新操作 public function save($id) { if($_SERVER['REQUEST_METHOD']=='POST'){ //執(zhí)行添加操作 (new User())->update('user',[ 'name'=>$_POST['name'], 'sex'=>$_POST['sex'], 'age'=>$_POST['age'], 'phone'=>$_POST['phone'], 'email'=>$_POST['email'], 'birthday'=>$_POST['birthday'], ],['id'=>$id]); echo "<script>alert('更新成功');location.href='/frame_project/';</script>"; } } //執(zhí)行刪除操作 public function delete($id) { (new User())->delete('user',['id'=>$id]); echo "<script>alert('刪除成功');location.href='/frame_project/';</script>"; } }
頁面展示:
Guru membetulkan:韋小寶Masa pembetulan:2019-03-13 09:13:02
Rumusan guru:寫的還是很不錯 自己寫框架是為了可以更好的去理解其他框架的東西原理