重複の可能性:
Chrome の悪意のあるファイルの警告を回避する
コード:
/*
.... Code to authenticate to my mysql and verify that we are an legal user.
*/
$type = mysql_result($AllResult, 0, 'file_type');
$size = mysql_result($AllResult, 0, 'file_size');
$name = mysql_result($AllResult, 0, 'file_name');
$data = mysql_result($AllResult, 0, 'file_content');
session_write_close();
ob_clean();
mysql_close();
header("Content-Transfer-Encoding: binary");
header("Content-type: $type");
header("Content-length: $size");
header("Content-Disposition: attachment;filename=$name");
header("Content-Description: PHP Generated Data");
echo "$data";
データベースの longblob からファイルをダウンロードしてユーザーのコンピューターに保存するための PHP コードを作成しました。このコードは、Opera と Firefox で完全に機能します。ただし、IE および google chrome では、プログラムに Microsoft SmartScreen ライセンスがない場合、「...名前... は一般的にダウンロードされておらず、コンピューターに損害を与える可能性があります」というダイアログが表示されます。
図:
でも; ヘッダーを変更できるかどうか、または「このファイルはコンピューターに損害を与える可能性があります。そのままにしておきますか?」[キープ] [破棄]
私が話しているダイアログの図:
更新: Content-Disposition にインラインと添付ファイルの両方を使用しようとしましたが、同じ結果になりました