login.php 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <?php
  2. //登录
  3. if(!defined('IN_T')){
  4. die('hacking attempt');
  5. }
  6. $act = Common::sfilter($_REQUEST['act']);
  7. //执行登录
  8. if($act=="do_login") {
  9. $re['status'] = 0;
  10. $phone = isset($_POST['phone']) ? Common::sfilter($_POST['phone']): '';
  11. $password = isset($_POST['password']) ? Common::sfilter($_POST['password']):'';
  12. $remember = intval($_POST['remember']);
  13. if(!Common::is_mobile($phone)){
  14. $re['msg'] = '手机号格式不正确';
  15. }
  16. else if(strlen($password)<6){
  17. $re['msg'] = '登录密码不能少于6位';
  18. }
  19. else if(!$user = $Db->query("select * from ".$Base->table('user')." where phone='".$phone."' and password = '".Common::encrypt($password)."' ",'Row')){
  20. $re['msg'] = '账号或密码不正确';
  21. }
  22. else{
  23. $data = array('last_time' => date('Y-m-d H:i:s',Common::gmtime()));
  24. $Db->update($Base->table('user'),$data,array('pk_user_main'=>$user['pk_user_main']));
  25. //赋值到session
  26. $_SESSION['user'] = array(
  27. 'nickname'=>$user['nickname'],
  28. 'phone'=>$user['phone'],
  29. 'pk_user_main'=>$user['pk_user_main'],
  30. 'level'=>$user['level'],
  31. 'avatar'=>$Db->query("select avatar from ".$Base->table('user_profile')." where pk_user_main=".$user['pk_user_main']."","One"),
  32. );
  33. //7天内免登录
  34. if($remember){
  35. //username,passwd
  36. $hashcode = Common::encrypt($phone.Common::encrypt($password));
  37. setcookie("remember[id]",$user['pk_user_main'],Common::gmtime()+7*60*60*24,'/');
  38. setcookie("remember[hashcode]",$hashcode,Common::gmtime()+7*60*60*24,'/');
  39. }
  40. $re = array('status'=>1,'msg'=>'登录成功,跳转...','href'=>empty($_POST['redirectUrl'])? '/member/' : Common::sfilter($_POST['redirectUrl']));
  41. }
  42. echo $Json->encode($re);
  43. exit;
  44. }
  45. //登录页面
  46. else{
  47. $tp->assign('redirectUrl',$_REQUEST['redirectUrl'] ? Common::sfilter($_REQUEST['redirectUrl']): '');
  48. $tp->assign('title','登录');
  49. }
  50. ?>