forked from mrlan/LRR
				
			
		
			
				
	
	
		
			43 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			PHP
		
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			PHP
		
	
	
<?php
 | 
						|
 | 
						|
session_start();
 | 
						|
 | 
						|
// Allow legal person to download files instead of using direct URL access
 | 
						|
// Adapted from https://www.runoob.com/w3cnote/php-download-file.html
 | 
						|
 | 
						|
 | 
						|
// 修改这一行设置你的文件下载目录
 | 
						|
// IMPORTANT: Do not delete the following conditional test
 | 
						|
if (strpos($_GET['file'], "../") != false) { // 检查是否有 ../,防止用户构造路径,访问某个他不应该访问的目录
 | 
						|
    die("Sorry.  Nothing to download.");
 | 
						|
}
 | 
						|
 | 
						|
$file = "./../../lrr_submission".$_GET['file'];
 | 
						|
$filename = basename($file);
 | 
						|
 | 
						|
// 判断文件是否存在
 | 
						|
if(!file_exists($file)) die("File does not exist.");
 | 
						|
 
 | 
						|
//  文件类型,作为头部发送给浏览器
 | 
						|
$type = filetype($file);
 | 
						|
 
 | 
						|
// 获取时间和日期
 | 
						|
$today = date("F j, Y, g:i a");
 | 
						|
$time = time();
 | 
						|
 | 
						|
if ((isset($_SESSION["user_student_id"]) && strpos($file, $_SESSION["user_student_id"]) > 0) || $_SESSION['user_type'] == "Lecturer" || $_SESSION['user_type'] == "TA" ) {
 | 
						|
    // 发送文件头部
 | 
						|
    header("Content-type: $type");
 | 
						|
    header('Content-Disposition: attachment;filename="'.urldecode($filename).'"');
 | 
						|
    header("Content-Transfer-Encoding: binary");
 | 
						|
    header('Pragma: no-cache');
 | 
						|
    header('Expires: 0');
 | 
						|
    // 发送文件内容
 | 
						|
    set_time_limit(0);
 | 
						|
    readfile($file);
 | 
						|
} else {
 | 
						|
    echo "Nothing to download.  Contact lanhui _at_ zjnu.edu.cn if you think otherwise.";
 | 
						|
}
 | 
						|
 | 
						|
?>
 |