thinkphp用户登录 保存Session后有问题
用户登录 保存Session后可以登录,但是在模板中用$_SESSION[username]获取Session,获取的是数据库中第一条数据。帮忙看看这段代码:
登录验证:
public function denglu(){
$User=D('User');
$username1=$_POST['username1'];
$password3=$_POST['password3'];
$verify=$_POST['verify'];
if($username1=='')
{
$this->error('用户名不能为空!!!');
}elseif($password3==''){
$this->error('密码不能为空!!!');
}elseif(md5($verify)!=Session::get('verify')){
$this->error('验证码错误!!!');
}
$map=array();
$map["username1"]=$username1;
$user=$User->find($map);
if(false===$user)
{
$this->error('用户名不存在!!!');
}else{
if($user['password3']!=md5($password3))$this->error('密码错误!!!');
Session::set('id',$user['id']);
Session::set('username',$user['username1']);
$this->redirect('Vip/index' , array('cate_id'=>2), 0,' 页面跳转中 ~');
}
}
用户登出
function loginout(){
if(isset($_SESSION[id])) {
Session::destroy();
$this->assign("jumpUrl",__URL__.'/logoin/');
$this->success('登出成功!');
}else {
$this->error('已经登出!');
}
}
登录验证:
public function denglu(){
$User=D('User');
$username1=$_POST['username1'];
$password3=$_POST['password3'];
$verify=$_POST['verify'];
if($username1=='')
{
$this->error('用户名不能为空!!!');
}elseif($password3==''){
$this->error('密码不能为空!!!');
}elseif(md5($verify)!=Session::get('verify')){
$this->error('验证码错误!!!');
}
$map=array();
$map["username1"]=$username1;
$user=$User->find($map);
if(false===$user)
{
$this->error('用户名不存在!!!');
}else{
if($user['password3']!=md5($password3))$this->error('密码错误!!!');
Session::set('id',$user['id']);
Session::set('username',$user['username1']);
$this->redirect('Vip/index' , array('cate_id'=>2), 0,' 页面跳转中 ~');
}
}
用户登出
function loginout(){
if(isset($_SESSION[id])) {
Session::destroy();
$this->assign("jumpUrl",__URL__.'/logoin/');
$this->success('登出成功!');
}else {
$this->error('已经登出!');
}
}
作者: luoxdv 发布时间: 2011-10-16
我晕 怎么没人回答呢
作者: bwwdlm 发布时间: 2011-10-24
直接用$_SESSION系列来操作呗
作者: 李文凯 发布时间: 2011-10-24