PageRenderTime 25ms CodeModel.GetById 21ms RepoModel.GetById 0ms app.codeStats 0ms

/php/xuzhou58/xuzhou58.com/dede/member_model_edit.php

http://jqbird.googlecode.com/
PHP | 227 lines | 193 code | 8 blank | 26 comment | 27 complexity | 0551bd356e6e6ded30bc6699e495ba64 MD5 | raw file
Possible License(s): GPL-3.0, LGPL-3.0, LGPL-2.1, GPL-2.0
  1. <?php
  2. require_once(dirname(__FILE__)."/config.php");
  3. CheckPurview('c_Edit');
  4. require_once(DEDEINC."/dedetag.class.php");
  5. require_once(DEDEINC."/oxwindow.class.php");
  6. if(empty($dopost))
  7. {
  8. $dopost="";
  9. }
  10. $id = (empty($id) ? 0 : intval($id));
  11. /*----------------
  12. function __SaveEdit()
  13. -----------------*/
  14. if($dopost=="save")
  15. {
  16. $state = isset($state) && is_numeric($state) ? $state : 1;
  17. $description = htmlspecialchars($description);
  18. $name = htmlspecialchars($name);
  19. $query = "update `#@__member_model` set name = '$name', description = '$description', state='$state' where id='$id' ";
  20. $dsql->ExecuteNoneQuery($query);
  21. //????????
  22. UpDateMemberModCache();
  23. ShowMsg("???????????","member_model_main.php");
  24. exit();
  25. }
  26. /*----------------
  27. function __Disabled()
  28. -----------------*/
  29. else if($dopost=="disabled")
  30. {
  31. @set_time_limit(0);
  32. CheckPurview('c_Del');
  33. $row = $dsql->GetOne("Select * From #@__member_model where id='$id'");
  34. $statenum = ($row['state']==0)? 1 : 0;
  35. $statestr = ($row['state']==0)? '??' : '??';
  36. //????
  37. $dsql->ExecuteNoneQuery("Update #@__member_model set state={$statenum} where id='$id' ");
  38. //????????
  39. UpDateMemberModCache();
  40. ShowMsg("??{$statestr}???????","member_model_main.php");
  41. exit();
  42. }
  43. /*----------------
  44. function __Copy()
  45. -----------------*/
  46. else if($dopost=="copy")
  47. {
  48. @set_time_limit(0);
  49. CheckPurview('c_Del');
  50. $row = $dsql->GetOne("Select * From #@__member_model where id='$id'");
  51. $thisname = $row['name'];
  52. $thistable = $row['table'];
  53. $thisinfo = $row['info'];
  54. $row = $dsql->GetOne("Select id From #@__member_model order by id desc limit 0,1 ");
  55. if(is_array($row))
  56. {
  57. $newid = $row['id']+1;
  58. }
  59. else
  60. {
  61. $newid = 1;
  62. }
  63. if(empty($job))
  64. {
  65. $job="";
  66. }
  67. //????
  68. if($job=="")
  69. {
  70. $wintitle = "??????-??????";
  71. $wecome_info = "<a href='member_model_main.php'>??????</a>::??????";
  72. $win = new OxWindow();
  73. $win->Init("member_model_edit.php","js/blank.js","POST");
  74. $win->AddHidden("job","yes");
  75. $win->AddHidden("dopost",$dopost);
  76. $win->AddHidden("id",$id);
  77. $win->AddTitle("?????? \"".$thisname."\" ???????");
  78. $msg ="";
  79. $msg.="<table width='460' border='0' cellspacing='0' cellpadding='0'>\r\n";
  80. $msg.="<tr>\r\n";
  81. $msg.=" <td width='170' height='24' align='center'>???ID?</td>\r\n";
  82. $msg.=" <td width='230'><input name='newid' type='text' id='newid' size='6' value='{$newid}'/></td>\r\n";
  83. $msg.="</tr>\r\n";
  84. $msg.="<tr>\r\n";
  85. $msg.=" <td height='24' align='center'>??????</td>\r\n";
  86. $msg.=" <td><input name='newname' type='text' id='newname' value='{$thisname}{$newid}' style='width:250px'/></td>\r\n";
  87. $msg.="</tr>\r\n";
  88. $msg.="<tr>\r\n";
  89. $msg.=" <td height='24' align='center'>??????</td>\r\n";
  90. $msg.=" <td><input name='newtable' type='text' id='newtable' value='{$thistable}{$newid}' style='width:250px'/></td>\r\n";
  91. $msg.="</tr>\r\n";
  92. $msg.="<tr>\r\n";
  93. $msg.=" <td height='24' align='center'>?????</td>\r\n";
  94. $msg.=" <td><font color='red'>??????????,???????????</font></td>\r\n";
  95. $msg.="</tr>\r\n";
  96. $msg.="<tr>\r\n";
  97. $msg.=" <td height='24' align='center'>??????</td>\r\n";
  98. $msg.=" <td><label>\r\n";
  99. $msg.=" <textarea name=\"description\" id=\"description\" cols=\"45\" rows=\"5\" onClick=\"this.value=''\">?????</textarea>\r\n";
  100. $msg.=" </label></td>\r\n";
  101. $msg.="</tr>\r\n";
  102. $msg.="<tr>\r\n";
  103. $msg.=" <td height='24' align='center'>?????</td>\r\n";
  104. $msg.=" <td><input name='state' type='radio' id='copytemplet' value='1' class='np' checked='checked'/>\r\n";
  105. $msg.=" ??\r\n";
  106. $msg.=" &nbsp;\r\n";
  107. $msg.=" <input name='state' type='radio' id='copytemplet' class='np' value='0'/>\r\n";
  108. $msg.=" ??</td>\r\n";
  109. $msg.="</tr>\r\n";
  110. $msg.="</table>";
  111. $win->AddMsgItem("<div style='padding:20px;line-height:300%'>$msg</div>");
  112. $winform = $win->GetWindow("ok");
  113. $win->Display();
  114. exit();
  115. }
  116. //??
  117. else if($job=="yes")
  118. {
  119. if(ereg("[^0-9-]",$newid)||empty($newid))
  120. {
  121. ShowMsg("<font color=red>'????ID'</font>??????","-1");
  122. exit();
  123. }
  124. if($newtable=="")
  125. {
  126. ShowMsg("???????","-1");
  127. exit();
  128. }
  129. $state = isset($state) && is_numeric($state) ? $state : 0;
  130. $newname = htmlspecialchars($newname);
  131. $row = $dsql->GetOne("Select * from #@__member_model where id='$newid' Or `table` like '$newtable' Or name like '$newname' ");
  132. if(is_array($row))
  133. {
  134. ShowMsg("???????‘ID’?‘??’????????????????","-1");
  135. exit();
  136. }
  137. //?????
  138. if(!$dsql->IsTable($newtable))
  139. {
  140. $dsql->Execute('me',"SHOW CREATE TABLE {$dsql->dbName}.{$thistable}");
  141. $row = $dsql->GetArray('me', MYSQL_BOTH);
  142. $tableStruct = $row[1];
  143. $tb = str_replace('#@__',$cfg_dbprefix,$thistable);
  144. $tableStruct = preg_replace("/CREATE TABLE `$thistable`/iU","CREATE TABLE `$newtable`",$tableStruct);
  145. $dsql->ExecuteNoneQuery($tableStruct);
  146. }
  147. $query = "insert into #@__member_model (`id`, `name`, `table`, `description`, `issystem`, `state`, `info`) values ('$newid', '$newname', '$newtable', '$description', 0, '$state','$thisinfo')";
  148. $rs = $dsql->ExecuteNoneQuery($query);
  149. if($rs)
  150. {
  151. UpDateMemberModCache();
  152. ShowMsg("?????????????????... ","member_model_edit.php?id={$newid}&dopost=edit");
  153. exit();
  154. }
  155. else
  156. {
  157. $errv = $dsql->GetError();
  158. ShowMsg("?????????????????????????<br /> ?????member_model_edit.php?dopost=copy $errv","javascript:;");
  159. exit();
  160. }
  161. //echo "Do it!";exit();
  162. }
  163. }
  164. /*----------------
  165. function __Delete()
  166. -----------------*/
  167. else if($dopost=="delete")
  168. {
  169. @set_time_limit(0);
  170. CheckPurview('c_Del');
  171. $row = $dsql->GetOne("Select * From #@__member_model where id='$id'");
  172. if($row['issystem'] == 1)
  173. {
  174. ShowMsg("????,????!","-1");
  175. exit();
  176. }
  177. if(empty($job))
  178. {
  179. $job="";
  180. }
  181. //????
  182. if($job=="")
  183. {
  184. $wintitle = "??????-??????";
  185. $wecome_info = "<a href='member_model_main.php'>??????</a>::??????";
  186. $win = new OxWindow();
  187. $win->Init("member_model_edit.php","js/blank.js","POST");
  188. $win->AddHidden("job","yes");
  189. $win->AddHidden("dopost",$dopost);
  190. $win->AddHidden("id",$id);
  191. $win->AddTitle("????????????????????<br />?????? \"".$row['name']."\" ???????");
  192. $winform = $win->GetWindow("ok");
  193. $win->Display();
  194. exit();
  195. }
  196. //??
  197. else if($job=="yes")
  198. {
  199. $row = $dsql->GetOne("Select `table` From `#@__member_model` where id='$id'",MYSQL_ASSOC);
  200. if(!is_array($row))
  201. {
  202. ShowMsg("??????????????!","-1");
  203. exit();
  204. }
  205. //???
  206. $dsql->ExecuteNoneQuery("DROP TABLE IF EXISTS `{$row['table']}`;");
  207. //????????
  208. $dsql->ExecuteNoneQuery("Delete From `#@__member_model` where id='$id'");
  209. UpDateMemberModCache();
  210. ShowMsg("???????????","member_model_main.php");
  211. exit();
  212. }
  213. }
  214. /*----------------
  215. function edit()
  216. -----------------*/
  217. $row = $dsql->GetOne("Select * From #@__member_model where id='$id'");
  218. include DEDEADMIN."/templets/member_model_edit.htm";
  219. ?>