熊猫办公系统
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

156 lines
4.6 KiB

<?php
require("../../class/connect.php");
require("../../class/db_sql.php");
require("../../class/q_functions.php");
require("../../member/class/user.php");
require("../../data/dbcache/class.php");
require("../../data/dbcache/MemberLevel.php");
require("../class/DownSysFun.php");
eCheckCloseMods('down');//关闭模块
$link=db_connect();
$empire=new mysqlquery();
$editor=1;
$ecmsreurl=2;
//验证IP
eCheckAccessDoIp('downinfo');
$id=(int)$_GET['pid'];
$callback=$_GET['callback'];
$pathid=(int)$_GET['pathid'];
$classid=(int)$_GET['classid'];
$code=$_GET['code'];
if(!$classid||empty($class_r[$classid][tbname])||!$id)
{
echo"<script>alert('此信息不存在');window.close();</script>";
exit();
}
$mid=$class_r[$classid][modid];
$tbname=$class_r[$classid][tbname];
$query="select * from {$dbtbpre}ecms_".$tbname." where id='$id' limit 1";
$r=$empire->fetch1($query);
if(!$r['id']||$r['classid']!=$classid)
{
echo"<script>alert('此信息不存在');window.close();</script>";
exit();
}
//副表
$finfor=$empire->fetch1("select ".ReturnSqlFtextF($mid)." from {$dbtbpre}ecms_".$tbname."_data_".$r[stb]." where id='$r[id]' limit 1");
$r=array_merge($r,$finfor);
//区分下载地址
$path_r=explode("\r\n",$r[downpath]);
if(!$path_r[$pathid])
{
//echo"<script>alert('此信息不存在');window.close();</script>";
//exit();
}
$showdown_r=explode("::::::",$path_r[$pathid]);
//下载权限
$nockpass='';
$user=array();
$downgroup=$showdown_r[2];
if($downgroup)
{
$user=isloginc();
//取得会员资料
$u=$empire->fetch1("select ".eReturnSelectMemberF('*')." from ".eReturnMemberTable()." where ".egetmf('userid')."='$user[userid]' and ".egetmf('rnd')."='$user[rnd]' limit 1");
if(empty($u['userid']))
{
echo "请你登录";
exit();
}
$nockpass=qReturnLoginPassNoCK($user['userid'],$user['username'],$user['rnd'],0);
//下载次数限制
if($level_r[$u['groupid']]['daydown'])
{
$setuserday=DoCheckMDownNum($user['userid'],$u['groupid'],2);
if($setuserday=='error')
{
echo "升级vip获取更多下载";
exit();
}
}
if($downgroup>0)//会员组
{
if($level_r[$downgroup][level]>$level_r[$u['groupid']][level])
{
echo "开通vip获取更多下载";
exit();
}
}
else//访问组
{
$vgroupid=0-$downgroup;
$ckvgresult=eMember_ReturnCheckViewGroup($u,$vgroupid);
if($ckvgresult<>'empire.cms')
{
exit();
}
}
//点数是否足够
$showdown_r[3]=intval($showdown_r[3]);
//if($showdown_r[3])
//{
//---------是否有历史记录
$bakr=$empire->fetch1("select id,truetime from {$dbtbpre}enewsdownrecord where id='$id' and classid='$classid' and userid='$user[userid]' and pathid='$pathid' and online=0 order by truetime desc limit 1");
if($bakr[id]&&(time()-$bakr[truetime]<=$public_r[redodown]*3600))
{}
else
{
//包月卡
if($u['userdate']-time()>0)
{
}
//点数
else
{
if($showdown_r[3]>$u['userfen'])
{
printerror("NotEnoughFen","history.go(-1)",1);
}
//去除点数
$usql=$empire->query("update ".eReturnMemberTable()." set ".egetmf('userfen')."=".egetmf('userfen')."-".$showdown_r[3]." where ".egetmf('userid')."='$user[userid]'");
}
//备份下载记录
$utfusername=$u['username'];
BakDown($classid,$id,$pathid,$user[userid],$utfusername,$r[title],$showdown_r[3],0);
}
//}
}
//变量
$thisdownname=$showdown_r[0]; //当前下载地址名称
$classname=$class_r[$r[classid]]['classname']; //栏目名
$bclassid=$class_r[$r[classid]]['bclassid']; //父栏目ID
$bclassname=$class_r[$bclassid]['classname']; //父栏目名
$titleurl=sys_ReturnBqTitleLink($r); //信息链接
$newstime=date('Y-m-d H:i:s',$r['newstime']);
$titlepic=$r['titlepic']?$r['titlepic']:$public_r[newsurl]."e/data/images/notimg.gif";
$ip=egetip();
$pass=md5(md5($classid."-!ecms!".$id."-!ecms!".$pathid).ReturnDownSysCheckIp()."wm_chief".$public_r[downpass].$user[userid]); //验证码
$url="/e/DownSys/doaction.php?enews=DownSoft&classid=$classid&id=$id&pathid=$pathid&pass=".$pass."&p=".$user[userid].":::".$user[rnd].":::".$nockpass; //下载地址
$p=$user[userid].":::".$user[rnd].":::".$nockpass;
$trueurl=ReturnDSofturl($showdown_r[1],$showdown_r[4],'../../',1); //真实文件地址
$fen=$showdown_r[3]; //下载点数
$downuser=$downgroup?$level_r[$downgroup][groupname]:'游客'; //下载等级
if (!$trueurl){
echo "文件不存在";
exit();
}else{
$empire->query("update {$dbtbpre}ecms_".$tbname." set totaldown=totaldown+1 where id='$id' limit 1");
echo $callback.'({"status":1,"downurl":"'.$public_r['add_file'].$trueurl.'"});';
Header("Location:".$public_r['add_file'].$trueurl."");
exit();
}
db_close();
$empire=null;
?>