我无法修改我的 PHP 程序。最初,该程序会从 Unix 机器上下载一个特定的文件,它运行良好。现在我对其进行了一些修改,以便用户可以输入文件名进行下载。
现在它不起作用,我不知道为什么。它不会抛出任何我能看到的错误;该页面只是返回空白。
PHP version - 5.2.13
Apache - 2.0
Unix Box - HP-UX 11.11 (old version; latest is 11.31)
local PC - Windows XP Pro
Browser - IE 7, Mozilla
代码:
<html>
<body>
<?php
ob_start();
if(isset($_POST['name']))
{
$file = $_POST['name'];
echo "file is $file" ;
if(!file_exists($file))
{
die("file not found: " );
}
$name = basename($file);
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="'.$name.'"');
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
readfile($file);
exit;
}
else
{
echo " <form action='download1.php' method='post' enctype='multipart/form-data'>
<b> Enter the file name: </b><input type='text' name='name'>
<br> <br>
<button type='submit'> Upload </button>
</form>";
}
?>
</body>
</html>
我究竟做错了什么?