⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 files.inc.php

📁 创建虚拟磁盘。用户可以创建磁盘
💻 PHP
字号:
<?php 
##
#	Project: PHPDisk
#	This is NOT a freeware, use is subject to license terms.
#
#	Site: http://www.phpdisk.com
#
#	$Id: files.inc.php 250 2009-03-10 17:29:43Z along $
#
#	Copyright (C) 2008-2009 PHPDisk Team. All Rights Reserved.
#
##

if(!defined('IN_PHPDISK') || !defined('IN_MYDISK')) {
	exit('[PHPDisk] Access Denied');
}
phpdisk_user();
define('SCRIPT_NAME',$item);

require_once lang(SCRIPT_NAME);

$lang = array_merge($pub_lang,$lang);

switch($action){
	case 'index':
	
		if($task == 'move'){
			if($p_formhash != formhash()){
				exit($lang['system_error']);
			}
			$file_ids = gpc('file_ids','P',array(''));
			$dest_folder = (int)gpc('dest_folder','P','');
			$is_extract = (int)gpc('is_extract','P',0);
			$is_link_code = (int)gpc('is_link_code','P',0);
						if($is_extract){
				if(count($file_ids) <1){
					$error = true;
					$sysmsg[] = $lang['please_select_extract_files'];
				}
				if(count($file_ids) >10){
					$error = true;
					$sysmsg[] = $lang['extract_files_limit'];
				}
				
				for($i=0;$i<count($file_ids);$i++){
					$file_str .= $file_ids[$i].',';
				}
				$file_str = substr($file_str,0,-1);
				$q = $db->query("select fl.file_id,fl.file_name,fl.file_extension,fl.file_size,fl.file_description,fl.file_time,fl.file_key,fd.folder_name,dk.disk_name from pd_files fl,pd_folders fd,pd_disks dk where (fl.disk_id=dk.disk_id and fl.folder_id=fd.folder_id) and fl.file_id in ($file_str) order by fl.file_id desc");
				$files_array = array();
				while($rs = $db->fetch_array($q)){
					$rs['store_at'] = $rs['disk_name'].":\\".$rs['folder_name'];
					$tmp_ext = $rs['file_extension'] ? '.'.$rs['file_extension'] : "";
					$rs['file_name_all'] = $rs['file_name'].$tmp_ext;
					$rs['file_name'] = cutstr($rs['file_name'].$tmp_ext,20);
					$rs['file_size'] = get_size($rs['file_size']);
					$rs['file_time'] = custom_time("Y-m-d",$rs['file_time']);
					$files_array[] = $rs;
				}
				$db->free($q);
				unset($rs);
								$default_date = date("Y-m-d",$timestamp+86400*10);
				$extract_total = 0;
				$action = 'set_extract_code';
				require_once template(SCRIPT_NAME,TPL_NAME);
							}elseif($is_link_code){
				if(count($file_ids) <1){
					$error = true;
					$sysmsg[] = $lang['please_select_link_files'];
				}
				
				for($i=0;$i<count($file_ids);$i++){
					$file_str .= $file_ids[$i].',';
				}
				$file_str = substr($file_str,0,-1);
				$q = $db->query("select file_id,file_name,file_key,file_extension from pd_files where file_id in ($file_str) order by file_id desc");
				$upl_array = array();
				while($rs = $db->fetch_array($q)){
					$tmp_ext = $rs['file_extension'] ? '.'.$rs['file_extension'] : "";
					$rs['file_name_all'] = $rs['file_name'].$tmp_ext;
					$rs['file_name'] = cutstr($rs['file_name'].$tmp_ext,20);
					$rs['file_link'] = $settings['phpdisk_url'].urr("viewfile","file_id=".$rs['file_id']."&file_key=".$rs['file_key']."");
					$upl_array[] = $rs;
				}
				$db->free($q);
				unset($rs);
								$action = 'make_link_code';
				require_once template(SCRIPT_NAME,TPL_NAME);
			}else{
			
				if(count($file_ids) <1){
					$error = true;
					$sysmsg[] = $lang['please_select_operation_files'];
				}
				if(!$dest_folder){
					$error = true;
					$sysmsg[] = $lang['please_select_dest_folder'];
				}
				
				$rs = $db->fetch_one_array("select disk_id from pd_folders where folder_id='$dest_folder'");
				$disk_id = $rs ? $rs['disk_id'] : 0;
				
				if(!$error){
					for($i=0;$i<count($file_ids);$i++){
						$file_str .= $file_ids[$i].',';
					}
					$file_str = substr($file_str,0,-1);
					$sql = "update pd_files set folder_id='$dest_folder',disk_id='$disk_id' where file_id in ($file_str)";
					$db->query_unbuffered($sql);
					$sysmsg[] = $lang['move_success'];
				}
				redirect($_SERVER['HTTP_REFERER'],$sysmsg);
				
			}
					}else{
		
			$folder_id = (int)gpc('folder_id','G',0);
			
			$rs = $db->fetch_one_array("select in_recycle,folder_name,disk_id from pd_folders where folder_id='$folder_id'");
			if($rs){
				$in_recycle = $rs["in_recycle"];
				$folder_name = $rs['folder_name'];
				$disk_id = $rs['disk_id'];
			}
			
			$sql_ext = $folder_id ? " and fl.folder_id='$folder_id'" : "";
			
			$sql_do = "pd_files fl,pd_folders fd,pd_disks dk where (fl.folder_id=fd.folder_id and fl.disk_id=dk.disk_id) and fd.in_recycle=0 and fl.in_recycle=0 and fl.userid='$pd_uid' {$sql_ext}";
	
			$rs = $db->fetch_one_array("select count(*) as total_num from {$sql_do}");
			$total_num = $rs['total_num'];
			$start_num = ($pg-1) * $perpage;
			
			$q = $db->query("select fl.*,fd.folder_name,fd.in_share,dk.disk_name from {$sql_do} order by file_id desc limit $start_num,$perpage");
			$files_array = array();
			while($rs = $db->fetch_array($q)){
				$rs['store_at'] = $rs['disk_name'].":\\".$rs['folder_name'];
				$tmp_ext = $rs['file_extension'] ? '.'.$rs['file_extension'] : "";
				$rs['file_name_all'] = $rs['file_name'].$tmp_ext;
				$rs['file_name'] = cutstr($rs['file_name'].$tmp_ext,20);
				$rs['folder_icon'] = $rs['in_share'] ? 'share_folder' : 'folder';
				$rs['file_size'] = get_size($rs['file_size']);
				$rs['file_time'] = custom_time("Y-m-d",$rs['file_time']);
				$files_array[] = $rs;
			}
			$db->free($q);
			unset($rs);
			
			$q = $db->query("select folder_id,folder_name,disk_name from pd_folders fd,pd_disks dk where fd.userid='$pd_uid' and fd.disk_id=dk.disk_id order by dk.disk_id asc, fd.folder_id asc");
			$folders_array = array();
			while($rs = $db->fetch_array($q)){
				$rs['location'] = $rs['disk_name'].":\\".$rs['folder_name'];
				$folders_array[] = $rs;
			}
			$db->free($q);
			unset($rs);
						$page_nav = multi($total_num, $perpage, $pg, urr("mydisk","item=$item&action=$action&folder_id=$folder_id"));
			
			require_once template(SCRIPT_NAME,TPL_NAME);
		}	
	break;
	
	case 'public':
		$sql_do = " pd_publics where userid='$pd_uid'";

		$rs = $db->fetch_one_array("select count(*) as total_num from {$sql_do}");
		$total_num = $rs['total_num'];
		$start_num = ($pg-1) * $perpage;
		
		$q = $db->query("select * from {$sql_do} order by file_id desc limit $start_num,$perpage");
		$files_array = array();
		while($rs = $db->fetch_array($q)){
			$tmp_ext = $rs['file_extension'] ? '.'.$rs['file_extension'] : "";
			$rs['file_name_all'] = $rs['file_name'].$tmp_ext;
			$rs['file_name'] = cutstr($rs['file_name'].$tmp_ext,30);
			$rs['file_size'] = get_size($rs['file_size']);
			$rs['file_time'] = custom_time("Y-m-d",$rs['file_time']);
			$rs['status_text'] = $rs['is_checked'] ? '<span class="txtblue">'.$lang['is_checked'].'</span>' : '<span class="txtred">'.$lang['un_checked'].'</span>';
			$files_array[] = $rs;
		}
		$db->free($q);
		unset($rs);
				$page_nav = multi($total_num, $perpage, $pg, urr("mydisk","item=$item&action=$action"));
		
		require_once template(SCRIPT_NAME,TPL_NAME);
	break;
	
	case 'public_search':
		$word = trim(gpc('word','G',''));
		$word_str = $db->escape(str_replace('銆

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -