この投稿は yyszj0911 によって最終編集されました (2011-11-24 14:43:05)
コードは以下の通り(閲覧ページには転送できません)ですが、デフォルトの $file="/var/www/test11.txt" を使用すると転送できます。
コントローラー:
function indexAction()<br />
{<br />
$file_dir = @$_POST["dir"]; //文件路径为当前目录 <br />
$file_name = @$_POST["file_name"]; //文件名<br />
$file=$file_dir.$file_name;<br />
//$file="/var/www/test11.txt";<br />
$this->view->downfile = $file;<br />
echo $this->view->render('download/download.phtml');<br />
}<br />
ビュー:
$file = $this->downfile;<br />
<br />
if (file_exists($file)) {<br />
header('Content-Description: File Transfer');<br />
header('Content-Type: application/octet-stream');<br />
header('Content-Disposition: attachment; filename='.basename($file));<br />
header('Content-Transfer-Encoding: binary');<br />
header('Expires: 0');<br />
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');<br />
header('Pragma: public');<br />
header('Content-Length: ' . filesize($file));<br />
ob_clean();<br />
flush();<br />
readfile($file);<br />
exit;<br />
}<br />
//$file = $this->downfile;<br />
else{echo $file.'ssa';}
-----解決策--------------------------------
値をどのように投稿しましたか?
------解決策----------------------
デフォルト $file="/var/ www/test11 .txt"; もちろん絶対パスなので問題ありません
$file=$file_dir.$file_name
絶対パスでも問題ありません
相対パスの場合は、それが正しいかどうかによって異なります。少なくとも彼が誰と親戚なのかを知ってください