Files
Pichome/dzz/pichome/download.php

34 lines
1.6 KiB
PHP
Raw Permalink Normal View History

2021-12-09 21:00:09 +08:00
<?php
2021-12-21 09:57:39 +08:00
if (!defined('IN_OAOOA')) {//所有的php文件必须加上此句防止被外部调用
exit('Access Denied');
}
2024-01-31 01:00:33 +08:00
2021-12-21 09:57:39 +08:00
$path = dzzdecode($_GET['dpath'],'',0);
2021-12-09 21:00:09 +08:00
2024-01-31 01:00:33 +08:00
$patharr = explode('_',$path);
$rid = $patharr[0];
if(!$rid) exit(json_encode(array('error'=>'dpath is must')));
$resourcesdata = C::t('pichome_resources')->fetch($rid);
$ulevel = getglobal('pichomelevel') ? getglobal('pichomelevel'):0;
$appdata = C::t('pichome_vapp')->fetch($resourcesdata['appid']);
if(!C::t('pichome_vapp')->getpermbypermdata($appdata['download'],$resourcesdata['appid'],'download')){
exit(lang('no_perm'));
}
$extension = substr($resourcesdata['name'], strrpos($resourcesdata['name'], '.') + 1);
if($extension != $resourcesdata['ext']){
$resourcesdata['name'] = $resourcesdata['name'].'.'.$resourcesdata['ext'];
}
2024-01-31 01:00:33 +08:00
$resourcesdata['name'] = '"' . (strtolower(CHARSET) == 'utf-8' && (strexists($_SERVER['HTTP_USER_AGENT'], 'MSIE') || strexists($_SERVER['HTTP_USER_AGENT'], 'Edge') || strexists($_SERVER['HTTP_USER_AGENT'], 'rv:11')) ? urlencode($resourcesdata['name']) : ($resourcesdata['name'])) . '"';
$attach = DB::fetch_first("select path,appid from %t where rid = %s",array('pichome_resources_attr',$rid));
if(is_numeric($attach['path'])){
$attachpath = 'attach::'.$attach['path'];
}else{
$attachpath = $appdata['path'].BS.$attach['path'];
}
addFiledownloadStats($rid,1);
$attachurl = IO::getStream($attachpath);
$attachurl= str_replace('#','%23',$attachurl);
2021-12-21 09:57:39 +08:00
$d = new FileDownload();
$d->download($attachurl, $resourcesdata['name'], $resourcesdata['size'], 0, true);
exit();