0

请我需要这个脚本的帮助。我有这个名为 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>
4

1 回答 1

0

让我们一步一步来。

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"); 

用这个替换你的 Content-Type ,你应该是金色的。强制下载不需要文件类型,他们只知道需要下载,现在!

希望这会有所帮助=)

于 2012-04-27T05:50:47.913 回答