mayi-member.php 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. <?php
  2. define('CURSCRIPT', 'login');
  3. define('IN_SMT', true);
  4. define('IN_MYMPS', true);
  5. define('IN_MANAGE', true);
  6. require_once dirname(__FILE__) . '/include/global.php';
  7. require_once dirname(__FILE__) . '/data/config.php';
  8. require_once MYMPS_DATA . '/config.db.php';
  9. require_once MYMPS_INC . '/db.class.php';
  10. ifsiteopen();
  11. $authcodesettings = read_static_cache('authcodesettings');
  12. require_once MYMPS_MEMBER . '/include/common.func.php';
  13. if (!in_array($mod, array(CURSCRIPT, 'register', 'forgetpass', 'out', 'validate'))) {
  14. $mod = $_REQUEST['mod'] = CURSCRIPT;
  15. }
  16. if ($mod == 'login' && $mymps_global['cfg_if_member_log_in'] != 1) {
  17. write_msg('操作失败!系统管理员关闭了会员登录功能!');
  18. }
  19. require_once MYMPS_DATA . '/config.inc.php';
  20. require_once MYMPS_INC . '/member.class.php';
  21. $url = isset($url) ? checkhtml($url) : '';
  22. $action = isset($action) ? $action : '';
  23. $action = $mymps_global['cfg_if_corp'] != 1 && $action == 'store' ? 'person' : $action;
  24. if (!submit_check('log_submit')) {
  25. if ($mod != 'out' && $mod != 'openlogin') {
  26. $member_log->chk_in() && write_msg('', 'member/index.php');
  27. }
  28. switch ($mod) {
  29. case 'validate':
  30. if ($code) {
  31. $arr = explode('.', base64_decode($code));
  32. $uid = $arr[0];
  33. $user_info = $db->getRow('SELECT id,userid,userpwd,email FROM `' . $db_mymps . 'member` WHERE id = \'' . $uid . '\'');
  34. if ($timestamp - $arr[2] < 1800 && $arr[1] == md5($user_info['id'] . '+' . $user_info['userpwd'])) {
  35. $db->query('UPDATE `' . $db_mymps . 'member` SET `status` = 1 WHERE id = \'' . $user_info['id'] . '\'');
  36. $userid = $user_info['userid'];
  37. $uid = $user_info['id'];
  38. $email = $user_info['email'];
  39. $error = 4;
  40. globalassign();
  41. include mymps_tpl('register_2');
  42. }
  43. else {
  44. $error = 5;
  45. globalassign();
  46. include mymps_tpl('register_2');
  47. }
  48. }
  49. break;
  50. case 'out':
  51. if (PASSPORT_TYPE == 'ucenter') {
  52. $member_log->out('noredirect');
  53. require MYMPS_ROOT . '/uc_client/client.php';
  54. $ucsynlogout = uc_user_synlogout();
  55. echo $ucsynlogout;
  56. echo mymps_goto($url ? $url : $mymps_global['SiteUrl'] . '/' . $mymps_global['cfg_member_logfile']);
  57. }
  58. else if (PASSPORT_TYPE == 'phpwind') {
  59. $member_log->out('noredirect');
  60. require MYMPS_ROOT . '/pw_client/uc_client.php';
  61. $ucsynlogout = uc_user_synlogout();
  62. echo $ucsynlogout;
  63. echo mymps_goto($url ? $url : $mymps_global['SiteUrl'] . '/' . $mymps_global['cfg_member_logfile']);
  64. }
  65. else {
  66. $member_log->out(trim($url));
  67. }
  68. break;
  69. case 'login':
  70. $qqlogin = read_static_cache('qqlogin');
  71. $wxlogin = read_static_cache('wxlogin');
  72. $url = trim($url);
  73. $loc = get_location('login', 0, '会员登录');
  74. $page_title = $loc['page_title'];
  75. $location = $loc['location'];
  76. $mymps_imgcode = $authcodesettings['login'];
  77. globalassign();
  78. include mymps_tpl(CURSCRIPT);
  79. break;
  80. case 'register':
  81. $mymps_global['cfg_if_member_register'] != 1 && write_msg('操作失败!系统管理员关闭了新会员注册!');
  82. $loc = get_location('register', 0, '会员注册');
  83. $page_title = $loc['page_title'];
  84. $location = $loc['location'];
  85. if (in_array($action, array('store', 'person'))) {
  86. require MYMPS_DATA . '/safequestions.php';
  87. $safequestion = GetSafequestion(0, 'safequestion');
  88. $mymps_imgcode = $authcodesettings['register'];
  89. $submit = '立即注册';
  90. if ($action == 'store') {
  91. $get_area_options = cat_list('area');
  92. }
  93. if ($action == 'store') {
  94. $get_member_cat = get_member_cat();
  95. }
  96. $mixcode = md5($cookiepre);
  97. $whenregister = '';
  98. $whenregister = $db->getOne('SELECT value FROM `' . $db_mymps . 'config` WHERE description = \'whenregister\' AND type = \'checkanswe\'');
  99. if ($whenregister == '1' && ($checkanswer = read_static_cache('checkanswer'))) {
  100. $checkquestion['id'] = $randid = array_rand($checkanswer, 1);
  101. $checkquestion['question'] = $checkanswer[$randid]['question'];
  102. $checkquestion['answer'] = $checkanswer[$randid]['answer'];
  103. }
  104. include mymps_tpl($mod . '_' . $action);
  105. }
  106. else {
  107. include mymps_tpl($mod);
  108. }
  109. break;
  110. case 'forgetpass':
  111. if ($_obf_YW1wO2NvZGU_) {
  112. $code = $_obf_YW1wO2NvZGU_;
  113. }
  114. $uid = $uid ? intval($uid) : '';
  115. $code = $code ? mhtmlspecialchars($code) : '';
  116. if ($code) {
  117. $arr = explode('.', base64_decode($code));
  118. $uid = $arr[0];
  119. $user_info = $db->getRow('SELECT id,userid,userpwd,email FROM `' . $db_mymps . 'member` WHERE id = \'' . $uid . '\'');
  120. if ($timestamp - $arr[2] < 1800 && $arr[1] == md5($user_info['id'] . '+' . $user_info['userpwd'])) {
  121. $userid = $user_info['userid'];
  122. $uid = $user_info['id'];
  123. $email = $user_info['email'];
  124. globalassign();
  125. include mymps_tpl($mod . '_3');
  126. }
  127. else {
  128. $status = 'error';
  129. $msg = '该密码重设链接已失效!';
  130. globalassign();
  131. include mymps_tpl($mod . '_4');
  132. }
  133. }
  134. else {
  135. $mymps_imgcode = $authcodesettings['forgetpass'];
  136. globalassign();
  137. include mymps_tpl($mod);
  138. }
  139. break;
  140. }
  141. }
  142. else {
  143. include MYMPS_MEMBER . '/include/' . $mod . '.inc.php';
  144. }
  145. is_object($db) && $db->Close();
  146. ?>