📄 download.php
字号:
<?php
defined('IN_PHPCMS') or exit('Access Denied');
$downid = intval($downid);
if(!$downid) message('非法参数。');
if(!preg_match("/".$PHP_DOMAIN."/i",$PHP_REFERER)) message('您所点击的下载内容来自 <a href="'.PHPCMS_PATH.'" >http://'.$PHP_SITEURL.'</a> ,请进入下载。');
$r = $db->get_one("SELECT * FROM ".TABLE_DOWN." WHERE downid=$downid",'CACHE',86400);
@extract($r);
$cat_arrgroupid_view = $_CAT['arrgroupid_view'] ? $_CAT['arrgroupid_view'] : $_CHA['arrgroupid_view'];
$groupview = $groupview ? $groupview : $cat_arrgroupid_view;
if(!check_purview($groupview))
{
$readmessage = preg_replace("/[{]([$][a-z_][a-z_\[\]]*)[}]/ie","\\1",$_CHA['purview_message']);
exit($readmessage);
}
if($readpoint>0)
{
if(!$_userid) message("下载需要点数!请登录!",PHPCMS_PATH."member/login.php?referer=".urlencode($PHP_URL));
if($_chargetype)
{
charge_time();
}
elseif(!getcookie("down_".$downid))
{
if($read==1)
{
charge_point($readpoint,$title."(downid=".$downid.")");
$readtime = $_CAT['defaultchargetype'] ? 0 : $timestamp+3600*24*365;
mkcookie("down_".$downid,1,$readtime);
}
else
{
$readurl = "?read=1&".$PHP_QUERYSTRING;
$readmessage = preg_replace("/[{]([$][a-z_][a-z_\[\]]*)[}]/ie","\\1",$_CHA['point_message']);
exit($readmessage);
}
}
}
update_downs($downid);
$urls = explode("\n",$downurls);
$downurl = trim($urls[$id]);
$downurl = explode("|",$downurl);
$filepath = preg_match("/^(http|ftp):\/\//i",$downurl[1]) ? $downurl[1] : PHPCMS_ROOT."/".$downurl[1];
@file_down($filepath);
function update_downs($downid)
{
global $db,$timestamp;
$r = $db->get_one("select downid,lastdowntime from ".TABLE_DOWN." where downid='$downid'");
if(!$r['downid']) return false;
@extract($r);
$lastdowndate = date('Y-m-d',$lastdowntime);
$lastdownweek = date('W',$lastdowntime);
$lastdownmonth = date('Y-m',$lastdowntime);
$today = date('Y-m-d',$timestamp);
$week = date('W',$timestamp);
$month = date('Y-m',$timestamp);
//更新今日下载次数
$todaydowns = $lastdowndate==$today ? 'daydowns+1' : 1;
//更新本周下载次数
$weekdowns = $lastdownweek==$week ? 'weekdowns+1' : 1;
//更新本月浏览次数
$monthdowns = $lastdownmonth==$month ? 'monthdowns+1' : 1;
//更新最后下载日期
$db->query("update ".TABLE_DOWN." set downs=downs+1,daydowns=$todaydowns,weekdowns=$weekdowns,monthdowns=$monthdowns,lastdowntime=$timestamp where downid=$downid ");
return true;
}
?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -