请我需要有关此脚本的帮助。我有一个名为 download.php 的 php 脚本。我要做的是,我想使我所有的下载都链接到此页面,即我想使其动态化。此外,每当我单击链接时,它实际上都会播放MP3,而不是为用户显示"另存为"。
1)请问我怎样才能使脚本动态化,以便此脚本适用于我的所有下载。
2)如何使其下载而不是播放/显示文件。
谢谢
<?php
$filename = 'download.mp3';
header('Pragma: public');
header('Expires: 0');
header('Cache-Control:must-revalidate, post-check=0,pre-check=0');
header('Cache-Control:private', false);
header('Content-Type:audio/mp3');
header('Content-Disposition: attachment;filename="'.basename ($filename).'";');
header('Content-Transfer-Encoding: binary');
header('Content-Length:'.filesize( $filename));
readfile($filename);
exit;
?>
HTML
======
< a href="download.php"> MP3 </a>
让我们一步一步来。
1)使脚本动态化很容易。 有两种方法:
a) 使文件名出现在 $_GET 中。例:
$file = $_GET['file'];
链接可以是
<a href="download.php?file=somefile.mp3">Download</a>
b) 将您的文件数据存储在数据库中。 数据库可以像id|filename|filesize|filetype
,你可以说download.php?id=##
,当调用该id #时,它会将文件名发送到页面并下载文件。
2)使文件自动下载。容易!
header("Content-Type: application/force-download");
用这个替换你的内容类型,你应该是金色的。 强制下载不需要文件类型,他们只知道他们需要下载,现在!
希望这有帮助=)