返回頂部
關閉軟件導航
位置:首頁 > 資訊 > 其他>疑是帝國CMS(EmpireCMS v 6.0)最新BUG

  我是個茉鳥免費代理ip驗證工具 ,在尋求建站系統時,找到了傳說中靈活度最高,最好用的網站管理系統,也就是我要說的帝國cms,于是下載了個EmpireCMS v 6.0來研究一下,在學習帝國CMS的過程中,側重了解了一下帝國的工作原理,大量的函數,耗了我幾天時間才理清楚個來龍去脈。不經意間,發現一個疑是帝國CMS的bug,這個BUG不大不小,對平時的使用基本沒什么影響,也就是在刪除數據表的時候可能遇到。下面我就放出來吧,讓高手們進一步確認。

  在/e/class/moddofun.php中有個刪除副表分表函數

  function DelDataTable($add,$userid,$username){

  global $empire,$dbtbpre,$emod_r;

  //操作權限

  CheckLevel($userid,$username,$classid,"table");

  $tid=(int)$add['tid'];

  $tbname=RepPostVar($add['tbname']);

  $datatb=(int)$add['datatb'];

  if(!$tid||!$tbname||!$datatb)

  {

  printerror("NotChangeDataTable","history.go(-1)");

  }

  $tr=$empire->fetch1("select tid,tbname,datatbs,deftb from {$dbtbpre}enewstable where tid='$tid'");

  if(!$tr['tid'])

  {

  printerror("NotChangeDataTable","history.go(-1)");

  }

  if(!strstr($tr['datatbs'],','.$datatb.','))

  {

  printerror("NotChangeDataTable","history.go(-1)");

  }

  if($tr['deftb']==$datatb||$datatb==1)

  {

  printerror("NotDelDefDataTable","history.go(-1)");

  }

  $newdatatbs=str_replace(','.$datatb.',',','代理驗證軟件 ,$tr['datatbs']);

  $sql=$empire->query("update {$dbtbpre}enewstable set datatbs='$newdatatbs' where tid='$tid'");

  //刪除信息

  $infosql=$empire->query("select * from {$dbtbpre}ecms_".$tr[tbname]." where stb='$datatb'");

  while($infor=$empire->fetch($infosql))

  {

  $mid=$emod_r[$infor[classid]]['modid'];

  $pf=$emod_r[$mid]['pagef'];

  $stf=$emod_r[$mid]['savetxtf'];

代理驗證軟件

  //分頁字段

  if($pf)

  {

  if(strstr($emod_r[$mid]['tbdataf'],','.$pf.','))

  {

  $finfor=$empire->fetch1("select ".$pf." from {$dbtbpre}ecms_".$tr[tbname]."_data_".$datatb." where id='$infor[id]'");

  $infor[$pf]=$finfor[$pf];

  }

  }

  //存文本

  if($stf)

  {

  $newstextfile=$infor[$stf];

  $infor[$stf]=GetTxtFieldText($infor[$stf]);

  DelTxtFieldText($newstextfile);//刪除文件

  }

  //刪除信息文件

  DelNewsFile($infor[filename],$infor[newspath],$infor[classid],$infor[$pf],$infor[groupid]);

  //刪除其它表記錄

  $empire->query("delete from {$dbtbpre}enewsqf where id='$infor[id]' and classid='$infor[classid]'");

  $empire->query("delete from {$dbtbpre}enewsinfovote where id='$infor[id]' and classid='$infor[classid]'");

  $empire->query("delete from {$dbtbpre}enewsdiggips where id='$infor[id]' and classid='$infor[classid]'");

  //刪除附件

  DelNewsTheFile($infor['id'],$infor['classid']);

  }

  $deltb=$empire->query("delete from {$dbtbpre}ecms_".$tr[tbname]." where stb='$datatb'");

  //刪除表

  $deltb=$empire->query("DROP TABLE IF EXISTS {$dbtbpre}ecms_".$tr[tbname]."_data_".$datatb.";");

  GetConfig(1);//更新緩存

  if($sql)

  {

  //操作日志

  insert_dolog("tid=".$tid."

  tbname=".$tr[tbname]."&datatb=$datatb");

  printerror("DelDataTableSuccess","db/ListDataTable.php?tid=$tid&tbname=$tr[tbname]");

  }

  else

  {

  printerror("DbError","history.go(-1)");

  }

  }

  巴比站長

  紅色部分,作者的意思應該是從模型緩存數組里獲取當前要操作的欄目對應的模型ID,但本人通過輸出emod_r的全部內容,發現這個數組里并沒有以模型ID(modid元素),而其第一維下標應該是模板ID(newstempid),這條語句取出的mid可能是錯誤的。那么后續操作要么誤操作,要么失敗。我翻開當時學習時的記錄(現在已經記得不清楚了),寫了個替代的語句。

如果您覺得 疑是帝國CMS(EmpireCMS v 6.0)最新BUG 這篇文章對您有用,請分享給您的好友,謝謝
文章地址:http://m.meyanliao.com/article/other/ysdgCMSEmpireCMSvzxBUG.html
解放雙手無盡可能,有問題添加天線貓微信
主站蜘蛛池模板: 无码专区狠狠躁躁天天躁| 69ZXX少妇内射无码| 亚洲人片在线观看天堂无码| 久久午夜无码鲁丝片| 亚洲色偷拍区另类无码专区| 中文字幕无码久久久| 色偷偷一区二区无码视频| 国产精品无码久久av不卡| 日韩av无码一区二区三区| 国产成人无码AV麻豆| a级毛片免费全部播放无码| 无码乱码av天堂一区二区| 国产成年无码久久久免费| 永久免费无码网站在线观看 | 亚洲中文字幕无码久久精品1| 中文字幕无码视频手机免费看| 国产av无码专区亚洲av毛片搜| 日韩午夜福利无码专区a| 人妻系列AV无码专区| 免费VA在线观看无码| 亚洲AV无码成人精品区日韩| 一本加勒比HEZYO无码人妻| 亚洲AV无码专区在线厂| 亚洲另类无码一区二区三区| 中文无码久久精品| 无码专区一va亚洲v专区在线| 亚洲日韩精品无码专区加勒比☆| 亚洲av无码一区二区三区不卡| 国产在线拍偷自揄拍无码| 亚洲一级特黄无码片| 成人免费无码大片A毛片抽搐| 一本久道综合在线无码人妻 | 精品亚洲AV无码一区二区| 日韩乱码人妻无码系列中文字幕| 亚洲AV无码成人精品区大在线| 日日摸日日碰人妻无码| 好了av第四综合无码久久| 中文字幕在线无码一区二区三区| 无码国模国产在线无码精品国产自在久国产 | 无码专区狠狠躁躁天天躁| 无码精品人妻一区二区三区漫画 |