13

什么是sql扩展类型?
我只想上传到服务器中的某个文件夹 .sql 文件。
我知道对于 txt 是文本/纯文本。什么是 sql 文件?

 if($_FILES['userfile']['type'] != 'THE SQL EXTENSION'){
    echo ' File is not an sql file.';
    exit;
}

谢谢。

4

4 回答 4

37

根据 IANA 的官方回答是application/sql。请参阅http://www.iana.org/assignments/media-types/media-types.xhtmlhttps://www.rfc-editor.org/rfc/rfc6922

但是,由于很多人不屑于阅读文档,您可能还想接受text/sql,text/x-sqltext/plain.

于 2015-04-20T19:26:12.293 回答
12

SQL 没有特殊的 MIME 类型。只需使用application/octet-stream.

请参阅下面的@Vroo 答案(application/sql)。自 RFC6922 发布以来,此答案不再正确。

于 2013-01-10T22:32:06.623 回答
2

没有办法仅根据 MIME 类型来检查它是否是 SQL 文件。正如其他人已经指出的那样,SQL 文件是文本/纯文本。如果您想确保只上传 SQL 文件,则必须对传入文件执行一些检查(例如运行检查 SQL 命令的正则表达式,或者甚至运行解析器/检查器,如果在 PHP 中可用)。

于 2013-01-10T22:38:30.830 回答
0

找出返回 $_FILES['userfile']['type']

用 echo $_FILES['userfile']['type'] 替换 echo ...

于 2013-01-10T22:35:07.780 回答