玩传奇论坛

 找回密码
立即注册

扫一扫,访问移动社区

论坛喇叭+ 发布

01-25 10:01
系统通知全站压缩包解压密码:www.wanmirbbs.com
01-25 10:01
01-25 10:01
查看: 1651|回复: 1
打印 上一主题 下一主题

[教程] 节省论坛空间--清理多余无用的附件!!

[复制链接]
跳转到指定楼层
楼主
发表于 2018-2-7 08:11:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,以游结友!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
节省论坛空间--清理多余无用的附件
帖子被删,但不知道其帖子里的附件是否也同样清理,用用这个吧!!!

使用方法:把这段代码保存为一个php文件,文件名任意,也可以下载附件,上传到论坛根目录执行即可。
为了安全,使用前请先备份资料,希望对朋友你有用!


  1. <?php
  2. /*
  3. Discuz!清理多余的附件
  4. */

  5. ob_start();
  6. session_start();
  7. $pertask=600;//每次处理的文件数,你可以根据情况更改

  8. require_once './include/common.inc.php';
  9. //身份检查
  10. if($adminid!=1)
  11.   exit('对不起,只有管理员才可以执行此操作!');
  12.   
  13. //利用session保存已清理文件列表??
  14. if(!session_is_registered("delfiles")){
  15.   session_register("delfiles");
  16.   $delfiles=array();
  17. }

  18. if ($begin==NULL) $begin=0;
  19. $end=$begin+$pertask;
  20. //列目录,取得文件列表??
  21. $array=list_dir($attachdir);
  22. if ($end>count($array)) $end=count($array);

  23. //=================================================================
  24. for ($i=$begin; $i<$end; $i++){
  25.   $search=str_replace("$attachdir/","",$array[$i]);
  26.   //搜索文件是否在资料库中存在??
  27.   $result=$db->query("SELECT attachment FROM {$tablepre}attachments where attachment=\"$search\"");
  28.   if (!$attach = $db->fetch_array($result)){
  29.           @unlink($array[$i]);//清理文件。你可先注释掉这句,不执行清理操作,只显示多余的附件          $delfiles[]=$search;//保留已清理文件名,以作输出?
  30.     }
  31. }
  32. //=================================================================

  33. if ($end<count($array)){
  34.   echo "已处理文件数:".$end."<br>";
  35.   $nextlink=$_SERVER['PHP_SELF']."?begin=".$end;
  36.   echo "<meta http-equiv=\"refresh\" content=\"1;URL=".$nextlink."\">";
  37.   echo "<a href=\"".$nextlink."\">程式将自动继续或单击这里?...</a>";
  38. }
  39. else {
  40.     $count=count($delfiles);
  41.     if ($count>0){
  42.     echo "找到多余附件共".$count."个,已清理,被清理文件如下:<hr>";
  43.     foreach($delfiles as $value)
  44.         echo "$value<br>";
  45.   }
  46.   else
  47.     echo "没找到多余的附件";
  48.   session_destroy();
  49. }
  50. ?>



  51. <?php
  52. //列目录
  53. function list_dir($dirname)
  54. {
  55.         static $result_array=array();   //静态阵列,保存函数返回值。???
  56.         $handle=opendir($dirname);
  57.         while ($file = readdir($handle))
  58.         {
  59.                 if($file=='.'||$file=='..'||$file=='index.htm')
  60.                         continue;
  61.                 if(is_dir("$dirname/$file"))
  62.                         list_dir("$dirname/$file");  //如果是目录,递迴调用。
  63.                 else
  64.                         $result_array[]="$dirname/$file";
  65.         }
  66.         closedir($handle);
  67.         return $result_array;
  68. }
  69. ?>
复制代码
文件名称:清理多余附件.rar 
下载次数:0  文件大小:1.12 KB  售价:1元宝 [记录]
下载权限: 不限  开通VIP可打折下载附件 → [点此购买VIP]  [充值元宝]  [[资源无效反馈]]
温馨提示:
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 本站提供的素材、源码、等等其他资源,都不包含技术服务,购买前请慎重!
3. 本站大部分下载资源收集于网络,版权归原作者所有。
4. 若因线路及非本站所能控制范围的故障导致暂停服务期间造成的一切不便与损失,论坛不负任何责任。
5. 注册会员通过任何手段和方法针对论坛进行破坏,我们有权对其行为作出处理。并保留进一步追究其责任的权利。
收藏收藏 分享分享 分享淘帖 支持支持 反对反对
沙发
发表于 2018-3-4 10:55:28 | 只看该作者
么有分,谁能送我点积分啊::>_<::
懒得打字嘛,点击右侧快捷回复 【乱回复纯数字纯字母将禁言】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

必备工具

地图查看分析转换三合一

目前地图转换 单纯的OB真彩地图转换编...号想必很多人都会, 也有很多工具

南宫地图编辑器v5.0

使用方法,放置传奇客户端DATA文件夹...

Tiles转换工具,支持支持255

支持255地图转换工具!

关于本站

玩传奇论坛 - 专业提供游戏素材、游戏工具、传奇单机、传奇服务端,致力于打造最精品的版本素材分享平台!

Archiver|小黑屋|玩传奇吉ICP备18002996号-1) |网站地图 

GMT+8, 2024-5-10 10:32 , Processed in 0.036363 second(s), 40 queries , Gzip On. 

 Powered by Discuz! X3.2

 © 2001-2013 Comsenz Inc.

返回顶部