前端时间我这边研究一下类似百度百科的网站,然后按照百度百科的一些功能,还有结合了海外做得比较大的wikipedia百科功能,做了整合开发,现在把那个项目的开发过程等功能,提供给大家参考,希望能够帮到大家的学习和使用。
系统语言:支持多语言切换
系统开发:PHP+MYSQL
系统显示:PC版+手机版+APP(后期开发)
仿百度百科网站源码,国外多语言wikipedia百科网站开发
第一篇 后台开发
后台登录
namespace app\admin\controller;
use think\facade\Request;
use think\facade\Db;
use think\facade\Session;
class Login
{
// 登录页
public function index()
{
return view('',[
]);
}
// 登录
public function login(){
if(Request::isPost()){
$data = Request::post();
if(empty($data['username'])){
return $this->error('请输入用户名');
}
if(empty($data['password'])){
return $this->error('请输入密码');
}
//用户名
$username = $data['username'];
//密码
$password = md5($data['password']);
$res = Db::name('manager')->where(['username'=>$username,'password'=>$password])->find();
if(!empty($res)){
//登录信息的添加
$info['last_ip'] = getIp();
$info['last_login_time'] = time();
$info_res = Db::name('manager')->where(['id'=>$res['id']])->update($info);
if($info_res){
// 是否禁用
if($res['status'] != 1){
return $this->error('该管理员已停用');
}
session('admin',$res);
//登录日志
$log_info['admin_id'] = $res['id'];
$log_info['username'] = $username;
$log_info['add_time'] = time();
$log_info['ip'] = getIp();
$log_info['mark'] = '登录系统';
$admin_log = Db::name('log')->insert($log_info);
return $this->success('登录成功');
}
}else{
return $this->error('用户名或密码错误');
}
}else{
return $this->error('操作有误');
}
}
退出
public function loginOut(){
session('admin', null);
return json(['code'=>1,'msg'=>'退出成功']);
}
public function success($msg = '', $data = ''){
return json(['code' => 1, 'msg' => $msg, 'data' => $data]);
}
public function error($msg = '', $data = ''){
return json(['code' => 0, 'msg' => $msg, 'data' => $data]);
}
}