程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> 修改幾個文件後,Dedecms 5.3版(GB)的在刪除文件同時可刪除圖片等附件

修改幾個文件後,Dedecms 5.3版(GB)的在刪除文件同時可刪除圖片等附件

編輯:PHP綜合

經過多日測試,修改幾個文件後,5.3版(GB)的在刪除文件同時可刪除圖片等附件.具體測試了專題.文章類.圖集類。這幾個類別的

另外幾個類別只測試了一次分類信息但沒有成功。

(期待高人能解決分類信息在刪除文章的同時可將自帶的圖片等附件全刪除。先謝謝了。)注明:我的站沒上線,僅是本機測試。

其他類別的都沒做測試。需要修改的文件為:

include文件夾中的inc中的inc_fun_funAdmin.php     inc_fun_funString.php   inc_stat.php

將下面代碼替換

//把新上傳的圖片信息保存到媒體文檔管理檔案中
        $inquery = "
        INSERT INTO dede_uploads(title,url,mediatype,width,height,playtime,filesize,uptime,mid)

替換修改如下:
//把新上傳的圖片信息保存到媒體文檔管理檔案中
        INSERT INTO dede_uploads "
        INSERT INTO dede_uploads(arcid,title,url,mediatype,width,height,playtime,filesize,uptime,mid($arcID))

dede文件夾中的inc中的inc_archives_functi*****.php

dede文件夾中的album_add.php  album_edit.php

include文件夾中的dialog中的  select_soft_post.php

以上修改都類似,具體可參考這裡:(抱歉原創作者網址沒找到)以下為dede論壇某位高手的內容,我無法找到原文網址。在下貼出原文供大家參考:

查找所有的文件,找到INSERT INTO dede_uploads

看看括號裡有沒有arcid這個字段,沒有就手工加上去,後面的括號記得加上'$arcID'

找到$arcID = GetIndexKey,一定要把這段至少遇到INSERT INTO dede_uploads的前面去,最好是代碼的最前面,如果$arcID = GetIndexKey這段已經在INSERT INTO dede_uploads這段的前面就不用移了

然後打開inc/inc_batchup.php找到155行,在後面加上以下代碼

$dsql->SetQuery("Select * from `dede_uploads` where arcid='$aid'");
$dsql->Execute();
while($row = $dsql->GetObject())
{
  $file=$row->url;
  @unlink("..".$file);
}
$dsql->ExecuteNoneQuery("Delete From `dede_uploads` where arcid='$aid' ");

就可以解決不刪除圖片的問題啦,主要是一定要uploads表存進東西了就得了

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved