国内流行的内容管理系统(CMS)多端全媒体解决方案 https://www.dedebiz.com
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

129 lines
3.8KB

  1. <?php
  2. /**
  3. * @version $Id: edit_baseinfo.php 1 8:38 2010年7月9日Z tianya $
  4. * @package DedeCMS.Member
  5. * @copyright Copyright (c) 2007 - 2020, DesDev, Inc.
  6. * @license http://help.dedecms.com/usersguide/license.html
  7. * @link http://www.dedecms.com
  8. */
  9. require_once(dirname(__FILE__)."/config.php");
  10. CheckRank(0,0);
  11. $menutype = 'config';
  12. if(!isset($dopost)) $dopost = '';
  13. $pwd2=(empty($pwd2))? "" : $pwd2;
  14. $row=$dsql->GetOne("SELECT * FROM `#@__member` WHERE mid='".$cfg_ml->M_ID."'");
  15. $face = $row['face'];
  16. if($dopost=='save')
  17. {
  18. $svali = GetCkVdValue();
  19. if(strtolower($vdcode) != $svali || $svali=='')
  20. {
  21. ReSETVdValue();
  22. ShowMsg('验证码错误!','-1');
  23. exit();
  24. }
  25. if(!is_array($row) || $row['pwd'] != md5($oldpwd))
  26. {
  27. ShowMsg('你输入的旧密码错误或没填写,不允许修改资料!','-1');
  28. exit();
  29. }
  30. if($userpwd != $userpwdok)
  31. {
  32. ShowMsg('你两次输入的新密码不一致!','-1');
  33. exit();
  34. }
  35. if($userpwd=='')
  36. {
  37. $pwd = $row['pwd'];
  38. }
  39. else
  40. {
  41. $pwd = md5($userpwd);
  42. $pwd2 = substr(md5($userpwd),5,20);
  43. }
  44. $addupquery = '';
  45. #api{{
  46. if(defined('UC_API') && @include_once DEDEROOT.'/uc_client/client.php')
  47. {
  48. $emailnew = $email != $row['email'] ? $email : '';
  49. $ucresult = uc_user_edit($cfg_ml->M_LoginID, $oldpwd, $userpwd, $emailnew);
  50. }
  51. #/aip}}
  52. //修改安全问题或Email
  53. if($email != $row['email'] || ($newsafequestion != 0 && $newsafeanswer != ''))
  54. {
  55. if($row['safequestion']!=0 && ($row['safequestion'] != $safequestion || $row['safeanswer'] != $safeanswer))
  56. {
  57. ShowMsg('你的旧安全问题及答案不正确,不能修改Email或安全问题!','-1');
  58. exit();
  59. }
  60. //修改Email
  61. if($email != $row['email'])
  62. {
  63. if(!CheckEmail($email))
  64. {
  65. ShowMsg('Email格式不正确!','-1');
  66. exit();
  67. }
  68. else
  69. {
  70. $addupquery .= ",email='$email'";
  71. }
  72. }
  73. //修改安全问题
  74. if($newsafequestion != 0 && $newsafeanswer != '')
  75. {
  76. if(strlen($newsafeanswer) > 30)
  77. {
  78. ShowMsg('你的新安全问题的答案太长了,请保持在30字节以内!','-1');
  79. exit();
  80. }
  81. else
  82. {
  83. $newsafequestion = HtmlReplace($newsafequestion,1);
  84. $newsafeanswer = HtmlReplace($newsafeanswer,1);
  85. $addupquery .= ",safequestion='$newsafequestion',safeanswer='$newsafeanswer'";
  86. }
  87. }
  88. }
  89. //修改uname
  90. if($uname != $row['uname'])
  91. {
  92. $rs = CheckUserID($uname,'昵称或公司名称',FALSE);
  93. if($rs!='ok')
  94. {
  95. ShowMsg($rs,'-1');
  96. exit();
  97. }
  98. $addupquery .= ",uname='$uname'";
  99. }
  100. //性别
  101. if( !in_array($sex, array('男','女','保密')) )
  102. {
  103. ShowMsg('请选择正常的性别!','-1');
  104. exit();
  105. }
  106. $query1 = "UPDATE `#@__member` SET pwd='$pwd',sex='$sex'{$addupquery} where mid='".$cfg_ml->M_ID."' ";
  107. $dsql->ExecuteNoneQuery($query1);
  108. //如果是管理员,修改其后台密码
  109. if($cfg_ml->fields['matt']==10 && $pwd2!="")
  110. {
  111. $query2 = "UPDATE `#@__admin` SET pwd='$pwd2' where id='".$cfg_ml->M_ID."' ";
  112. $dsql->ExecuteNoneQuery($query2);
  113. }
  114. // 清除会员缓存
  115. $cfg_ml->DelCache($cfg_ml->M_ID);
  116. ShowMsg('成功更新你的基本资料!','edit_baseinfo.php',0,5000);
  117. exit();
  118. }
  119. include(DEDEMEMBER."/templets/edit_baseinfo.htm");