SQL拡張タイプとは何ですか?
サーバー内のいくつかのフォルダーに .sql ファイルのみをアップロードしたいと考えています。
txt が text/plain であることはわかっています。SQLファイルは何ですか?
if($_FILES['userfile']['type'] != 'THE SQL EXTENSION'){
echo ' File is not an sql file.';
exit;
}
ありがとう。
SQL拡張タイプとは何ですか?
サーバー内のいくつかのフォルダーに .sql ファイルのみをアップロードしたいと考えています。
txt が text/plain であることはわかっています。SQLファイルは何ですか?
if($_FILES['userfile']['type'] != 'THE SQL EXTENSION'){
echo ' File is not an sql file.';
exit;
}
ありがとう。
IANA による公式の回答はapplication/sql
. http://www.iana.org/assignments/media-types/media-types.xhtmlおよびhttps://www.rfc-editor.org/rfc/rfc6922を参照してください。
ただし、多くの人はわざわざドキュメントを読まないのでtext/sql
、 、text/x-sql
、text/plain
.
SQL 用の特別な MIME タイプはありません。を使用するだけapplication/octet-stream
です。
以下の@Vrooの回答を参照してください(application/sql
)。RFC6922 が公開されたため、この回答は正しくありません。
MIME タイプに基づいて単純に SQL ファイルであるかどうかを確認する方法はありません。他の人がすでに指摘しているように、SQLファイルはテキスト/プレーンです。SQLファイルのみがアップロードされていることを確認したい場合は、受信ファイルに対していくつかのチェックを実行する必要があります(SQLコマンドをチェックする正規表現の実行、またはPHPで利用可能な場合はパーサー/チェッカーの実行など)。
$_FILES['userfile']['type'] を返すものを見つける
echo ... を echo $_FILES['userfile']['type']; に置き換えます。