廣告廣告
  加入我的最愛 設為首頁 風格修改
首頁 首尾
 手機版   訂閱   地圖  簡體 
您是第 4457 個閱讀者
 
發表文章 發表投票 回覆文章
  可列印版   加為IE收藏   收藏主題   上一主題 | 下一主題   
香吉士 手機
個人文章 個人相簿 個人日記 個人地圖
特殊貢獻獎 創作大師獎 創作大師獎-2 創作大師獎-3
知名人士
級別: 知名人士 該用戶目前不上站
推文 x234 鮮花 x555
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片
推文 x0
[5.5][分享] 附件下載名單
【適用版本】: Discuz 5.5
【作者】: alan888
 

附注:
1. 此插件部份修改源自下帖, 作者: AndyGod
http://www.alan888.com/Discuz...php?tid=1413
2. 從其他版本升級不用執行下面步驟 (1) 的數據庫升級
3. 下載名單只能顯示於安裝此插件後的下載者, 同時下載次數與顯示下載名單的數量也會有差異

修改辦法
1. 數據庫升級

複製程式
ALTER TABLE `cdb_attachments` ADD `dl_users` TEXT NOT NULL ; 

2. 修改 attachment.php



複製程式
                $db->query("UPDATE {$tablepre}attachments SET downloads=downloads+Ƈ' WHERE aid='$aid'", 'UNBUFFERED');

更換


複製程式
               $query2 = $db->query("SELECT dl_users FROM{$tablepre}attachments WHERE aid='$aid' AND dl_users like'%$discuz_user,%'");
                        if($db->result($query2, 0)) {
                        } else {
                        $db->query("UPDATE {$tablepre}attachments SET downloads=downloads+1 WHERE aid='$aid'", 'UNBUFFERED');
                        $dl_user = $attach[dl_users].''.$discuz_user.', '
                        $dl_user = addslashes($dl_user);
                        $db->query("UPDATE {$tablepre}attachments SET dl_users='$dl_user' WHERE aid='$aid'");
                                }

3. 修改 misc.php



複製程式
} elseif($action == 'customtopics') {

上面加上

複製程式
} elseif($action == 'viewdluser') {
        if(empty($forum['allowview'])) {
                if(!$forum['viewperm'] && !$readaccess) {
                        showmessage('group_nopermission', NULL, 'NOPERM');
                } elseif($forum['viewperm'] && !forumperm($forum['viewperm'])) {
                        showmessage('forum_nopermission', NULL, 'NOPERM');
                }
        }
        if($thread['readperm'] && $thread['readperm'] >$readaccess && !$forum['ismoderator'] &&$thread['authorid'] != $discuz_uid) {
                showmessage('thread_nopermission', NULL, 'NOPERM');
        }
        if($forum['password'] && $forum['password'] != $_DCOOKIE['fidpw'.$fid]) {
                dheader("Location: {$boardurl}forumdisplay.php?fid=$fid&sid=$sid");
        }
        $dllistpp = 180; //每頁顯示名單數量
        $page = $_GET['page'];
        $dl_user = ''
        $query = $db->query("SELECT dl_users FROM {$tablepre}attachments WHERE tid=$tid AND aid='$aid'");
                $dl_user = $db->result($query, 0);
                $dlusername = explode(",", trim($dl_user));
                $num = count($dlusername);
                $page = max(1, intval($page));
                $start_limit = ($page - 1) * $dllistpp;
                $multipage = multi($num, $dllistpp, $page, "misc.php?action=viewdluser&tid=$tid&aid=$aid");
                $dlusername = @array_slice($dlusername, $start_limit, $dllistpp);                
                        if($dlusername) {
                                $dllist = $dlid = array();
                                foreach($dlusername as $dlid) {
                                        $dlid = '<ahref="viewpro.php?username='.rawurlencode(trim($dlid)).'"target="_blank">'.$dlid.'</a>'
                                        $dllist[] = $dlid;

                                }
                        }
        
        include template('dluserlist');


4. 修改 viewthread_attachlist 模板


複製程式
<div class="t_attachlist">

上面加上

複製程式
<script type="text/javascript">
        function showdllist(aid) {
                var obj = document.getElementById('viewdluserframe'+aid);
                var url = 'misc.php?action=viewdluser&tid=$attach[tid]&aid='+aid;
                showframe(obj, url);
        }
        function showframe(obj, url) {
                if(!obj.innerHTML) {
                        obj.innerHTML = '<iframe width="100%"align="center" height="30" onload="setframeheight(this)"frameborder="0" scrolling="no" src="'+url+'"></iframe>'
                }
                if(obj.innerHTML) {
                        obj.style.display = obj.style.display == '' ? 'none' : ''
                }
        }
        function setframeheight(obj) {
                obj.height = obj.contentDocument ? obj.contentDocument.body.scrollHeight + 14 : obj.Document.body.scrollHeight;
        }        
</script>


複製程式
  {lang downloads}: $attach[downloads]


下面加上

複製程式
                <!--{if  $attach[downloads] > 0}-->
                    <a href="###" onclick="showdllist($attach[aid])">[下載名單]</a>
                <!--{/if}-->



複製程式
        </div>

<!--{eval
}
}-->

上面加上

複製程式
<div id="viewdluserframe$attach[aid]" style="width:100%;clear:both;display:none; margin-top:5;"></div>


5. 下載附件解壓後上載至 templates/default 目錄下

~完成~ 表情


本帖包含附件
zip dluserlist.rar   (2022-06-09 14:05 / 1 KB)  
說明:
下載次數:0



獻花 x0 回到頂端 [樓 主] From:臺灣中華電信HINET | Posted:2008-08-15 14:35 |

首頁  發表文章 發表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.020985 second(s),query:15 Gzip disabled
本站由 瀛睿律師事務所 擔任常年法律顧問 | 免責聲明 | 本網站已依台灣網站內容分級規定處理 | 連絡我們 | 訪客留言