国内流行的内容管理系统(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.

104 lines
4.2KB

  1. <?php
  2. /**
  3. * 升级为管理员
  4. *
  5. * @version $Id: member_toadmin.php 1 14:09 2010年7月20日Z tianya $
  6. * @package DedeCMS.Administrator
  7. * @copyright Copyright (c) 2020, DedeBIZ.COM
  8. * @license https://www.dedebiz.com/license
  9. * @link https://www.dedebiz.com
  10. */
  11. require_once(dirname(__FILE__)."/config.php");
  12. CheckPurview('member_Edit');
  13. if(empty($dopost)) $dopost = '';
  14. if(empty($fmdo)) $fmdo = '';
  15. $ENV_GOBACK_URL = isset($_COOKIE['ENV_GOBACK_URL']) ? 'member_main.php' : '';
  16. $row = array();
  17. /*----------------
  18. function __Toadmin()
  19. 升级为管理员
  20. ----------------*/
  21. if($dopost == "toadmin")
  22. {
  23. $pwd = trim($pwd);
  24. if($pwd!='' && preg_match("#[^0-9a-zA-Z_@!\.-]#", $pwd))
  25. {
  26. ShowMsg('密码不合法,请使用[0-9a-zA-Z_@!.-]内的字符!','-1', 0, 3000);
  27. exit();
  28. }
  29. $safecodeok = substr(md5($cfg_cookie_encode.$randcode), 0, 24);
  30. if($safecodeok != $safecode)
  31. {
  32. ShowMsg("请填写正确的安全验证串!", "member_toadmin.php?id={$id}");
  33. exit();
  34. }
  35. $pwdm = '';
  36. if($pwd!='')
  37. {
  38. $inputpwd = ",pwd";
  39. $inputpwdv = ",'".substr(md5($pwd), 5, 20)."'";
  40. $pwdm = ",pwd='".md5($pwd)."'";
  41. }else{
  42. $row = $dsql->GetOne("SELECT * FROM #@__member WHERE mid='$id'");
  43. $password = $row['pwd'];
  44. $inputpwd = ",pwd";
  45. $pwd = substr($password, 5, 20);
  46. $inputpwdv = ",'".$pwd."'";
  47. $pwdm = ",pwd='".$password."'";
  48. }
  49. $typeids=(empty($typeids))? "" : $typeids;
  50. if($typeids=='')
  51. {
  52. ShowMsg("请为该管理员指定管理栏目!","member_toadmin.php?id={$id}");
  53. exit();
  54. }
  55. $typeid = join(',', $typeids);
  56. if($typeid=='0') $typeid = '';
  57. if($id!=1)
  58. {
  59. $query = "INSERT INTO `#@__admin`(id,usertype,userid$inputpwd,uname,typeid,tname,email)
  60. VALUES('$id','$usertype','$userid'$inputpwdv,'$uname','$typeid','$tname','$email')";
  61. }
  62. else
  63. {
  64. $query = "INSERT INTO `#@__admin`(id,userid$inputpwd,uname,typeid,tname,email)
  65. VALUES('$id','$userid'$inputpwdv,'$uname','$typeid','$tname','$email')";
  66. }
  67. $dsql->ExecuteNoneQuery($query);
  68. $query = "UPDATE `#@__member` SET rank='100',uname='$uname',matt='10',email='$email'$pwdm WHERE mid='$id'";
  69. $dsql->ExecuteNoneQuery($query);
  70. $row = $dsql->GetOne("SELECT * FROM #@__admintype WHERE rank='$usertype'");
  71. $floginid = $cuserLogin->getUserName();
  72. $fromid = $cuserLogin->getUserID();
  73. $subject = "恭喜您已经成功提升为管理员";
  74. $message = "亲爱的会员{$userid},您已经成功提升为{$row['typename']},具体操作权限请同网站超级管理员联系。";
  75. $sendtime = $writetime = time();
  76. $inquery = "INSERT INTO `#@__member_pms` (`floginid`,`fromid`,`toid`,`tologinid`,`folder`,`subject`,`sendtime`,`writetime`,`hasview`,`isadmin`,`message`)
  77. VALUES ('$floginid','$fromid','$id','$userid','inbox','$subject','$sendtime','$writetime','0','0','$message'); ";
  78. $dsql->ExecuteNoneQuery($inquery);
  79. ShowMsg("成功升级一个帐户!","member_main.php");
  80. exit();
  81. }
  82. $id = preg_replace("#[^0-9]#", "", $id);
  83. //显示用户信息
  84. $randcode = mt_rand(10000, 99999);
  85. $safecode = substr(md5($cfg_cookie_encode.$randcode), 0, 24);
  86. $typeOptions = '';
  87. $typeid=(empty($typeid))? '' : $typeid;
  88. $typeids = explode(',', $typeid);
  89. $dsql->SetQuery("SELECT id,typename FROM `#@__arctype` WHERE reid=0 AND (ispart=0 OR ispart=1)");
  90. $dsql->Execute('op');
  91. while($nrow = $dsql->GetObject('op'))
  92. {
  93. $typeOptions .= "<option value='{$nrow->id}' class='btype'".(in_array($nrow->id, $typeids) ? ' selected' : '').">{$nrow->typename}</option>\r\n";
  94. $dsql->SetQuery("SELECT id,typename FROM #@__arctype WHERE reid={$nrow->id} AND (ispart=0 OR ispart=1)");
  95. $dsql->Execute('s');
  96. while($nrow = $dsql->GetObject('s'))
  97. {
  98. $typeOptions .= "<option value='{$nrow->id}' class='stype'".(in_array($nrow->id, $typeids) ? ' selected' : '').">—{$nrow->typename}</option>\r\n";
  99. }
  100. }
  101. $row = $dsql->GetOne("SELECT * FROM #@__member WHERE mid='$id'");
  102. include DedeInclude('templets/member_toadmin.htm');