微信實驗十二、ThinkPHP5.0單頁瀏覽、增加、修改、刪除用戶及源碼下載

一、實驗?zāi)康?br>

1、掌握ThinkPHP5.0用戶瀏覽、增加、修改和刪除功能。

二、實驗內(nèi)容

1、建立ThinkPHP5.0用戶瀏覽頁面,且包括刪除功能。

2、建立ThinkPHP5.0用戶增加和修改頁面。

(>>>>在公眾號中輸入文章最后彩蛋即可獲取源代碼)

開源項目:https://github.com/chenxhjeo,個人博客:http://blog.csdn.net/u013487761

技術(shù)QQ群名稱:豆豆咨詢,群號:625686304

微信公眾號名稱:豆豆咨詢,微信公眾號:douAsk

初建日期:2017.04.26

三、實驗步驟及過程

常用模塊具有的功能包括:瀏覽、刪除、修改、增加等功能,我們在ThinkPHP5.0時候,應(yīng)靈活掌握這些基本功能,以下我們將介紹如何實現(xiàn)這些功能。

1、創(chuàng)建瀏覽、增加、修改、刪除界面

用戶登錄后,進(jìn)入http://127.0.0.1/noneCms/public/index.php/weixin/index/index.html主界面,單擊公眾號用戶,則進(jìn)入了微信用戶信息管理界面,包括用戶信息瀏覽、刪除、增加、修改幾個功能,如圖所示。

2、關(guān)鍵代碼解析

用戶通過登錄頁面http://127.0.0.1/noneCms/public/index.php/weixin/login/index進(jìn)入后臺管理模塊,http://127.0.0.1/noneCms/public/index.php/weixin/index/index為用戶登錄之后后臺管理主頁面。然后,用戶單擊“公眾號用戶”,則進(jìn)入用戶管理界面,即http://127.0.0.1/noneCms/public/index.php/weixin/users/index。在該界面可以操作用戶信息,包括瀏覽、添加、刪除、修改等操作。

Users為用戶管理控制模塊,其文件為Users.php,即通過http://127.0.0.1/noneCms/public/index.php/weixin/users/index調(diào)用weixin模塊的users控制器中的index方法進(jìn)入用戶瀏覽頁面,用戶登錄之后主頁面為http://127.0.0.1/noneCms/public/index.php/weixin/index/index

1)Users.php文件

Users.php是users控制器文件,其中index()方法顯示用戶管理頁面,add()方法完成用戶信息增加,edit()方法完成用戶信息修改,dele()方法完成用戶信息刪除,代碼如下:

/**

*單頁控制器

*/

namespace app\weixin\controller;

use app\weixin\model\Category;

use think\Config;

use think\Db;

use think\Loader;

class Users extends Common

{

public function index()

{

$list = Db::name('user')->field('username,logintime,id,loginip,email,islock,phone')->where('islock','neq',3)->select();

//$list = Db::name('user')->field('nickname,last_login_time,id,last_login_ip,email,status,phone')->where('status','eq',1)->select();

$this->assign('list', $list);

return $this->fetch();

}

/*

*添加用戶

*/

public function add()

{

if (request()->isPost()) {

//修改處理

$params = input('post.');

$data = [

'username' => $params['user_name'],

'password' =>$params['password'],

'email' => $params['email'],

'phone' => $params['phone'],

'islock' => $params['islock'],

'repassword' => $params['repassword']

];

//驗證規(guī)則

$validate = Loader::validate('UsersAdd');

if (isset($params['id'])) {

//更新操作

if($params['old_password']){

$info = Db::name('user')->field('password,encrypt')->find($params['id']);

$password = get_password($params['old_password'],$info['encrypt']);

if($info['password'] != $password){

exit(json_encode(['status' => 0, 'msg' => '原密碼不正確', 'url' => '']));

}

}

if(!$validate->scene('edit')->check($data)){

$error = $validate->getError();

exit(json_encode(['status' => 0, 'msg' => $error, 'url' => '']));

}

$data['encrypt'] = get_randomstr();//6位hash值

$data['password'] = get_password($data['password'],$data['encrypt']);

unset($data['repassword']);

$flag = Db::name('user')->where('id',$params['id'])->update($data);

if ($flag) {

exit(json_encode(['status' => 1, 'msg' => '修改成功', 'url' => url('users/index')]));

} else {

exit(json_encode(['status' => 0, 'msg' => '修改失敗,請稍后重試', 'url' => '']));

}

}else{

//新增

if(!$validate->check($data)){

$error = $validate->getError();

exit(json_encode(['status' => 0, 'msg' => $error, 'url' => '']));

}

unset($data['repassword']);

$data['encrypt'] = get_randomstr();//6位hash值

$data['password'] = get_password($data['password'],$data['encrypt']);

$data['logintime'] = time();

$data['createtime'] = time();

$data['loginip'] = request()->ip();

$data['username'] = $params['user_name'];

$data['phone'] = $params['phone'];

$flag=Db::name('user')->insert($data);

if ($flag) {

exit(json_encode(['status' => 1, 'msg' => '添加成功', 'url' => url('users/index')]));

} else {

exit(json_encode(['status' => 0, 'msg' => '添加失敗,請稍后重試', 'url' => '']));

}

}

} else {

return $this->fetch();

}

}

/**

*修改用戶信息

*/

public function edit($id)

{

$data = Db::name('user')->find($id);

$this->assign('data', $data);

return $this->fetch();

}

/**

*刪除用戶信息

*/

public function dele()

{

$id = input('param.id/d',0);

$flag = Db::name('user')->where(['id' => $id])->update(['islock' => 3]);

if ($flag) {

echo '刪除成功';

} else {

echo '刪除失敗';

}

}

}

2)validate/UsersAdd.php驗證文件

該文件輔助users控制器的add()和edit()方法驗證用戶輸入的數(shù)據(jù),在Users.php文件中采用代碼$validate = Loader::validate('UsersAdd');調(diào)用UsersAdd驗證器驗證。

UsersAdd.php文件如下所示。

class UsersAdd extends Validate {

protected $rule =[

'username'=> 'require|max:25|min:4',

'email' => 'email',

'password' => 'require|max:25|min:6',

'repassword'=>'require|confirm:password'

];

protected $message=[

'username.require' => '用戶名必須',

'username.max'=> '用戶名最多不能超過25個字符',

'username.min'=> '用戶名最少4個字符',

'password.require'=> '密碼必須',

'password.min'=> '密碼長度至少六位',

'email'=> '郵箱格式錯誤',

//'repassword.require' => '確認(rèn)密碼必須',

'repassword.confirm' => '兩次密碼必須一致'

];

/**

*驗證場景

*/

protected $scene = [

'edit'=>['name','repassword'=>'confirm:password'],

];

}

四、技術(shù)服務(wù)

1、如果有疑問或者需要幫助,請加入QQ群(群名稱:豆豆咨詢,群號:625686304);或者公眾號douAsk,公眾號名稱為“豆豆咨詢”。掃描以下二維碼,關(guān)注“豆豆咨詢”。

技術(shù)QQ群名稱:豆豆咨詢,群號:625686304;微信公眾號名稱:豆豆咨詢,微信公眾號:douAsk

彩蛋號:1209。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,511評論 19 139
  • 今天是521 一個可以開口說愛的日子 愛情有多美好 可以沖淡生活的苦澀 讓陪伴有了溫暖 也讓這個世界變得好溫柔 或...
    白茶清歡心依舊閱讀 347評論 0 0
  • Dekore 一般圖樣圖樣解構(gòu)者:Kari Schultz發(fā)音為DeKore,法語為“好的” Kari 說:我喜歡...
  • 斑駁的月光下,擁擠的街道變得空曠遼闊,黑夜一點點襲來,像突如其來的洪水,淹沒了一片清晰。 幽暗的咖啡廳里,獨座,望...
    miss晴安閱讀 292評論 0 0
  • 簡單料理完元芬后事后,劉老幺與幾個朋友約好,一起去上海打工。 二娃希望劉老幺能幫忙把三娃帶上,三娃一直很想外出打工...
    話嘮的二娃閱讀 528評論 0 0

友情鏈接更多精彩內(nèi)容