inc_login.php 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. <?php
  2. CURSCRIPT != 'wap' && exit('FORBIDDEN');
  3. $returnurl = isset($_REQUEST['returnurl']) ? urldecode($_REQUEST['returnurl']) : '';
  4. if ($returnurl) {
  5. msetcookie('returnurl', $returnurl);
  6. }
  7. $authcodesettings = read_static_cache('authcodesettings');
  8. if ($action == 'logout') {
  9. if (PASSPORT_TYPE == 'ucenter') {
  10. require MYMPS_ROOT . '/uc_client/client.php';
  11. $ucsynlogout = uc_user_synlogout();
  12. echo $ucsynlogout;
  13. }
  14. $member_log->out('noredirect');
  15. echo mymps_goto($url ? $url : 'index.php?mod=member');
  16. }
  17. else if ($action == 'login') {
  18. $userid = isset($userid) ? trim($userid) : '';
  19. $userpwd = isset($userpwd) ? trim($userpwd) : '';
  20. $checkcode = isset($checkcode) ? trim($checkcode) : '';
  21. if ($authcodesettings['login'] == 1 && !($randcode = mymps_chk_randcode($checkcode))) {
  22. redirectmsg('验证码输入错误,请重新输入', 'index.php?mod=login');
  23. }
  24. if ($userid == '' || $userpwd == '') {
  25. redirectmsg('用户帐号或密码不能为空', 'index.php?mod=login');
  26. }
  27. $user_id = $db->getOne('SELECT userid FROM `' . $db_mymps . 'member` WHERE userid=\'' . $userid . '\' OR mobile=\'' . $userid . '\' OR email=\'' . $userid . '\'');
  28. if ($user_id) {
  29. $row = $db->getRow('SELECT userid,status FROM `' . $db_mymps . 'member` WHERE userid=\'' . $user_id . '\' AND userpwd=\'' . md5($userpwd) . '\'');
  30. if (!$row) {
  31. errormsg('登录失败,您输入了错误的账号或密码!');
  32. exit();
  33. }
  34. $s_uid = $row['userid'] ? $row['userid'] : $userid;
  35. $userid = $s_uid;
  36. }
  37. else {
  38. $s_uid = NULL;
  39. }
  40. $row['status'] = in_array(PASSPORT_TYPE, array('ucenter', 'phpwind')) ? 1 : $row['status'];
  41. if (PASSPORT_TYPE == 'ucenter') {
  42. require_once MYMPS_ROOT . '/member/include/common.func.php';
  43. require MYMPS_ROOT . '/uc_client/client.php';
  44. list($uid, $username, $password, $email) = uc_user_login($userid, $userpwd, $email);
  45. if (0 < $uid) {
  46. if (!$db->getOne('SELECT count(*) FROM ' . $db_mymps . 'member WHERE userid=\'' . $userid . '\'')) {
  47. member_reg($userid, md5($userpwd));
  48. }
  49. else {
  50. $db->query('UPDATE `' . $db_mymps . 'member` SET userpwd = \'' . md5($userpwd) . ('\' WHERE userid = \'' . $userid . '\''));
  51. }
  52. $s_uid = $userid;
  53. }
  54. else {
  55. if ($uid == -1) {
  56. errormsg('用户不存在,或者被删除');
  57. }
  58. else if ($uid == -2) {
  59. errormsg('密码输入错误');
  60. }
  61. else {
  62. errormsg('未定义操作');
  63. }
  64. exit();
  65. }
  66. }
  67. if ($s_uid) {
  68. if (empty($row['status'])) {
  69. redirectmsg('您的账号 [<b>' . $s_uid . '</b>] 正在审核中,审核通过后可正常登录!', $returnurl ? $returnurl : urlencode('index.php?mod=login&cityid=' . $cityid));
  70. exit();
  71. }
  72. else {
  73. $db->query('UPDATE `' . $db_mymps . 'member` SET logintime=\'' . $timestamp . '\' WHERE userid = \'' . $userid . '\' ');
  74. $member_log->in($s_uid, md5($userpwd), 'on', 'noredirect');
  75. }
  76. if (PASSPORT_TYPE == 'phpwind' && $user_login['synlogin']) {
  77. echo $user_login['synlogin'];
  78. }
  79. else if (PASSPORT_TYPE == 'ucenter') {
  80. echo uc_user_synlogin($uid);
  81. }
  82. redirectmsg($s_uid . ', 欢迎回来!', $returnurl ? $returnurl : urlencode('index.php?mod=member&cityid=' . $cityid));
  83. }
  84. else {
  85. redirectmsg('登录失败,您输入了错误的帐号或密码!', $returnurl ? $returnurl : urlencode('index.php?mod=login&cityid=' . $cityid));
  86. }
  87. }
  88. else if ($iflogin == 1) {
  89. redirectmsg('您已登录', $returnurl ? $returnurl : 'index.php?mod=member');
  90. }
  91. else {
  92. $qqlogin = read_static_cache('qqlogin');
  93. $wxlogin = read_static_cache('wxlogin');
  94. include mymps_tpl('member_login');
  95. }
  96. ?>