这里,我们有两个页面:filelist.php和download.php。filelist.php从数据库中读出文件的地址和文件名称,并列表显示。当用户点击链接要求下载时,链接使用get方法传递参数fileurl和filename到download.php中。download.php依据传来的参数fileurl和filename对文件进行读取并提供下载(利用了fopen()和fread()函数)。
<?php
$conn=mysql_connect("localhost","root","12345");//username->root,password->12345
mysql_select_db("php");// chose database
$query="SELECT * FROM file";
$resultSet = mysql_query($query);
$rows=mysql_num_rows($resultSet);
for($i=0;$i<$rows;$i++){
$row = mysql_fetch_row($resultSet);
?>
<li>
<a href="download.php?fileurl=<?php echo $row[0] ?>&filename=<?php echo $row[1] ?>">
<?php echo $row[1]?>
</a>
</li>
<?php
}
mysql_close($conn);
?>
<?php
$file=@fopen($fileurl,"r");
if (!$file) {
echo '文件找不到';
} else {
Header('Content-type: application/octet-stream');
Header('Content-Disposition: attachment; filename=' . $filename);
while (!feof ($file)) {
echo fread($file,50000);
}
}
fclose ($file);
?>
评论