ホームページ  >  記事  >  バックエンド開発  >  ファイルをダウンロードできないのはなぜですか?

ファイルをダウンロードできないのはなぜですか?

WBOY
WBOYオリジナル
2016-06-23 14:39:441037ブラウズ

0cbce96a4d041d87c202251ee645d246".$file " 5db79b134e9f6b82c0b36e0489ee08ed076402276aae5dbec7f672f8f4e5cc81";
echo "$root$fileea2ece79a29abeb1a6f27686855bb54b なぜこのコードは実行できないのでしょうか?ファイルのダウンロードを実行しますか? ブラウザ: Sogou Browser IE 両方試しました


ディスカッションに返信 (解決策)

ダウンロードするにはヘッダー ヘッダーを使用してください

ヘッダー ヘッダーを使用してダウンロードしてください テスト プログラムを教えていただけますか


もう?? ? もう??
<?php$root="D:/ghost/";if(is_dir($root)){   $openHandle=opendir($root);   while(false!==($file=readdir($openHandle))){	   if(!is_dir($root.$file)){		 echo "<a href='?do=down&file=".$file."&path=".urlencode($root)."'>".$root.$file."</a><br/>";	   }   }   closedir($openHandle);}else{echo "文件夹不存在";}$do=(isset($_REQUEST['do'])) ? addslashes($_REQUEST['do']) : '';if($do=='down') {	$file=(isset($_REQUEST['file'])) ? addslashes($_REQUEST['file']) : '';	$path=(isset($_REQUEST['path'])) ? addslashes($_REQUEST['path']) : '';	OB_start();	function DownLoad($info,$file) {		OB_Clean();		if(!file_exists($info)) {			exit('Error:'.__LINE__.','.basename(__FILE__).'!');		}		$info=file_get_contents($info);		header('Content-Transfer-Encoding: binary');		header('Content-Type: application/force-download; name="'.$file.'"');		header('Content-Disposition: attachment; filename='.$file.'');		header('Cache-control: private');		header('Pragma: no-cache');		header('Expires: 0');		echo $info;		die();	}	DownLoad($path.$file,$file);}

すでに??
<?php$root="D:/ghost/";if(is_dir($root)){   $openHandle=opendir($root);   while(false!==($file=readdir($openHandle))){	   if(!is_dir($root.$file)){		 echo "<a href='?do=down&file=".$file."&path=".urlencode($root)."'>".$root.$file."</a><br/>";	   }   }   closedir($openHandle);}else{echo "文件夹不存在";}$do=(isset($_REQUEST['do'])) ? addslashes($_REQUEST['do']) : '';if($do=='down') {	$file=(isset($_REQUEST['file'])) ? addslashes($_REQUEST['file']) : '';	$path=(isset($_REQUEST['path'])) ? addslashes($_REQUEST['path']) : '';	OB_start();	function DownLoad($info,$file) {		OB_Clean();		if(!file_exists($info)) {			exit('Error:'.__LINE__.','.basename(__FILE__).'!');		}		$info=file_get_contents($info);		header('Content-Transfer-Encoding: binary');		header('Content-Type: application/force-download; name="'.$file.'"');		header('Content-Disposition: attachment; filename='.$file.'');		header('Cache-control: private');		header('Pragma: no-cache');		header('Expires: 0');		echo $info;		die();	}	DownLoad($path.$file,$file);}

すでに?? エラー コード: 27

file_put_contents ,$str);

header("location:download/excel.csv"); // コンピューターにダウンロード ダイアログ ボックスを自動的に表示させます


file_put_contents( 'download/excel.csv',$str); header("location:download/excel.csv"); // コンピューターにダウンロード ダイアログ ボックスを自動的に表示させます。 追加方法

もういいですか?? if($ do=='down') は一度も成功しませんでした。次の中括弧内のコードは実行されません。どうすればよいでしょうか? d3e25cfc4292119424e48353d06defa5".$root.$file."5db79b134e9f6b82c0b36e0489ee08ed3daf8bf89d6464fc93a828168ccf711d".$root.$file "&lt;/a&gt;&lt; gt;"; isset($_REQUEST['file'])) ?addslashes($_REQUEST ['file']) : ''; $path=(isset($_REQUEST['path'])) ? ']) : '';

OB_start();
関数 DownLoad ($info,$file)
{
OB_Clean();
if(!file_exists($info))
{ exit('エラー:'.__LINE__.','.basename(__FILE__).'!'); $info=file_get_contents($info); ' "');
header('Content-Disposition:attachment; filename='.$ファイル。'');
header('Pragma: no-cache');
echo $info; ?わかりました
いいえ、php ファイルを直接ダウンロードしました
私のダウンロード方法は、ファイルの種類に関係なくダウンロードできるため、ダウンロードする際の要件をリストしています。ファイルの場合、php ファイルの種類を除外する必要があります。もう完了しましたか? php ファイルを直接ダウンロードするだけです
ファイルにアクセス制限がある限り、私の方法はファイルの種類に関係なく使用できます。 , ダウンロードできるので、ダウンロードするファイルをリストするときは、php タイプを除外する必要があります
LINUX でテストしましたか? LINUX からダウンロードしたファイルは正常に実行できません。いくつかの乱雑なコンテンツをサポートしてください。アクセス制限がある場合はダウンロードできるため、ダウンロードするファイルをリストするときに php ファイル タイプを除外する必要があります。
これはテスト用ですか? ダウンロードしたファイルは WINDOWS では正常に実行できません。 LINUX では、多少乱雑な内容が書かれていますが、Windows と Linux の両方で実行していますので、サポートしてください。すべて正常です。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。