2016-05-09 21 views
0

ダウンロード後にファイルを開くことができません。Php-ダウンロードファイルのダウンロードに失敗しました

ファイルが破損していると表示されます。

私はすべての必要なヘッダーをうまく使ったと思います。 クロムリソースが文書として解釈しかし、MIMEタイプapplication/octet-streamのFirefoxの

ないエラーMSGで転送:

は、クロムでは、エラーのよう示しています。

if (isset($_GET['file']) && basename($_GET['file']) == $_GET['file']) { 
$filename = $_GET['file']; 
} else { 
$filename = NULL; 
} 

$err = 'Sorry, the file you are requesting is unavailable.'; 
if ($filename) { 
// define the path to your download folder plus assign the file name 
$path = '/wp-content/uploads/'. $filename; 
// check that file exists and is readable 


if (file_exists($path)) { 
      header('Content-Description: File Transfer'); 
      header('Content-Type: application/octet-stream'); 
      header('Content-Disposition: attachment; filename="'. basename($path) . '"'); 
      header('Content-Transfer-Encoding: binary'); 
      header('Expires: 0'); 
      header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); 
      header('Pragma: public'); 
      header('Content-Length: ' . filesize($path)); 
      ob_end_clean(); 
      flush(); 
      readfile($path); 
      exit; 
     } 


    } 

ダウンロード:ftpフォルダからダウンロードしています。

オープンしているフォーマットはありません。

.txtが開かれています。 私が間違った方向にいるかどうか教えてください。テーブルへの挿入

:文字列は二重引用符で定義されている場合

echo "<tr><a href='?file=". $row["FileupName"]."'>".$row["FileupName"]."</td></tr>"; 
+3

問題を解決するのに役立つ[回答を受け入れる](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)の習慣を身につける必要があります。あなたはポイントを獲得し、他の人はあなたを助けることを奨励されます。 –

+0

@Fred -ii- ok ... – JMR

+0

また、ソリューションを提供してくれた人の解決策が見つかりました。 –

答えて

-1

readfile('$path')があなたの問題であり、それはPHPで(引用符なしで)readfile($path)

する必要がありますが、変数は文字列のみで評価されています"。効果的には、コンテンツがリテラル文字列 '$ path'で、不正なファイルサイズのファイルをダウンロードしています。

+0

私は同じエラーが発生しました:ドキュメントとして解釈されたリソースがMIMEタイプapplication/octet-streamで転送されました: – JMR

+0

ダウンロードしようとしているファイルのMIMEタイプを使用するようにcontent-typeヘッダーを設定しようとしましたか? [mime_content_type()](http://php.net/manual/en/function.mime-content-type.php)関数は役に立ちます – Vidalia

+0

@ vidalia私は使用していません...私は確かにこれを試してください.. – JMR

関連する問題