织梦dedecms下载统计for链接到真实软件地址 :
将软件下载链接弄成显示真实地址时的下载统计
第一步
打开
Quote:
/include/taglib/channel/softlinks.lib.php
找到
function getDownloads($url)
在它之前加入
function ch_softlinks_allb($fvalue,&$ctag,&$refObj,&$row)
{
global $dsql;
//引入权限判断
require_once(DEDEINC."/memberlogin.class.php");
$cfg_ml = new MemberLogin(-1);
$query = "select daccess from ".$refObj->ChannelInfos['addtable']." where aid=’".$refObj->ArcID."’";
$daccess = $dsql->GetOne($query);
if($cfg_ml->M_Rank < $daccess['daccess'])
{
return ‘你的权限不足或者未登录, 不能下载! 请登陆或者升级等级‘;
}
$phppath = $GLOBALS['cfg_phpurl'];
$downlinks = ”;
$dtp = new DedeTagParse();
$dtp->LoadSource($fvalue);
if(!is_array($dtp->CTags))
{
$dtp->Clear();
return "无链接信息!";
}
$tempStr = GetSysTemplets(‘channel_downlinksb.htm’);
foreach($dtp->CTags as $ctag)
{
if($ctag->GetName()==’link’)
{
$links = trim($ctag->GetInnerText());
$serverName = trim($ctag->GetAtt(‘text’));
$islocal = trim($ctag->GetAtt(‘islocal’));
if(!isset($firstLink) && $islocal==1)
{
$firstLink = $links;
}
if($islocal==1 && $row['islocal']!=1)
{
continue;
}
else
{
//支持http,迅雷下载,ftp,flashget
if(!eregi(‘^http://|^thunder://|^ftp://|^flashget://’,$links))
{
$links = $GLOBALS['cfg_mainsite'].$links;
}
$downloads = getDownloads($links);
if($row['gotojump']==1)
{
$links = $phppath."/download.php?open=1&id=".$refObj->ArcID."&link=".urlencode(base64_encode($links));
}
$temp = str_replace("~link~",$links,$tempStr);
$downlinks .= $temp;
}
}
}
$dtp->Clear();
//启用镜像功能的情况
if($row['ismoresite']==1 && !empty($row['sites']) && isset($firstLink))
{
$firstLink = @eregi_replace($GLOBALS['cfg_basehost'],”,$firstLink);
$row['sites'] = ereg_replace("[/r/n]{1,}","/n",$row['sites']);
$sites = explode("/n",trim($row['sites']));
foreach($sites as $site)
{
if(trim($site)==”)
{
continue;
}
list($link,$serverName) = explode(‘|’,$site);
$link = trim($link).$firstLink;
$downloads = getDownloads($link);
if($row['gotojump']==1)
{
$link = $phppath."/download.php?open=1&link=".urlencode(base64_encode($link));
}
$temp = str_replace("~link~",$link,$tempStr);
$temp = str_replace("~server~",$serverName,$temp);
$temp = str_replace("~downloads~",$downloads,$temp);