哪们大神知道我在控制器中加入了session:set()后,该方法失效并且不报错,帮我看看这是什么缘故,我用的是phpstudy部署apache服务器!
代码如下:
<?phpnamespace app\index\controller;
use app\index\controller\Base;use think\Request;
use app\index\model\User as UserModel;
use think\Session;
class User extends Base{
// 登录页面
function login() {
return $this->view->fetch();
}
// 用户数据验证
function checkLogin(Request $request) {
$status = 0;
$result = "";
$data = $request->param();
$rule = [ 'name|用户名' => 'require', 'password|密码' => 'require', 'verify|验证码' => 'require|captcha' ];
$result = $this->validate($data, $rule); // 验证用户名和密码等是否为空
if ($result === true) {
$map = [
'name' => $data['name'],
'password' => md5($data['password'])
];
$user = UserModel::get($map);
if ($user == NULL) {
$result = '用户名或密码错误';
} else {
$status = 1;
$result = "登录成功";
session::set('id', $user->id);
session::set('user_info', $user->getdata());
}
}
return ['status' => $status, 'message' => $result, 'data' => $data ];
}
}
哈哈哈,静态引用要用门脸think/faced/session
我感觉是你的session::set('user_info', $user->getdata());出的错。$user->getdata()中的getdata应该是getData吧
你解决了吗?
我也是这个问题了
你的配置中是否开启了session?