2016-04-22 10 views
2

イメージをMySQLデータベースにアップロードしました。保存したファイルをダウンロードしようとしています。 Content-Disposition: attachment: - :PHPファイルがダウンロードされない

警告:すでに

私も試験により送信されたヘッダのヘッダ情報を変更することはできませんが、私のスクリプトは、次の警告が表示されます。しかし、それはまだ動作しません。

$query = "SELECT * FROM Upload"; 
$result = mysqli_query ($con, $query) 
    or die ("Couldn't execute SELECT query: ". mysqli_error($con)); 
$nrows = mysqli_num_rows($result); 


echo '<table> 
    <tr> 
     <td>Id</td> 
     <td>Name</td> 
     <td>Type</td> 
     <td>Size (MB)</td> 
    </tr>'; 
    $selfpg = $_SERVER['PHP_SELF']; 
    while($row = mysqli_fetch_assoc($result)){ 
     extract($row); 
     echo "<tr> 
       <td>$Id</td> 
       <td>$Name</td> 
       <td>$Type</td> 
       <td>$SizeMB</td> 
       <td> <a href='$selfpg?id=$Id'> Download </a> </td> 
      </tr>";  
} 
echo '</table>'; 

//---------------------------------------------------------------------- 
if (isset($_GET['id'])){ 
    mysqli_data_seek($result,0); 
    $row = mysqli_fetch_assoc($result); 
    extract($row); 
    header("Content-Type: ". $Type); 
    header("Content-Length: ". $SizeMB); 
    header("Content-Disposition: inline; filename= ". $Name); 
    echo $Content; 
} 
else{ 
    echo "<br>No id received to download a file</br>"; 
} 
+0

イメージをダウンロードするか、ページに組み込みますか? – slax0r

+0

私はそれをダウンロードしたい。 – Amali

答えて

1

あなたのスクリプトがechoとのデータの出力を開始:

Printed file

はここに私のコードです:ファイルがダウンロードされません、代わりにそのファイルを印刷します。つまり、ページに何かをエコーし​​ているので、デフォルトヘッダーが既に送信されているため、再送信することはできません。ページに何かをエコーし​​ながら、ファイルのダウンロードに必要なヘッダーも送信するには、output buffering

関連する問題