Что такое тип расширения sql?
Я хочу загрузить в какую-то папку на моем сервере только файлы .sql.
Я знаю, что для txt является text / plain. что для файлов sql?
if($_FILES['userfile']['type'] != 'THE SQL EXTENSION'){ echo ' File is not an sql file.'; exit; }
Благодарю.
Для SQL нет специального типа MIME. Просто используйте application/octet-stream
.
См. Ответ @ Vroo ниже ( application/sql
). Поскольку RFC6922 был опубликован, этот ответ больше не верен.
Официальный ответ в соответствии с IANA – application/sql
. См. http://www.iana.org/assignments/media-types/media-types.xhtml и http://tools.ietf.org/html/rfc6922
Однако, поскольку многие люди не утруждают себя чтением документации, вы также можете принять text/sql
, text/x-sql
и text/plain
.
Невозможно проверить, является ли файл SQL просто на основе MIME-типов. SQL-файлы являются текстовыми / обычными, как уже указывали другие. Вам нужно будет выполнить некоторые проверки входящего файла (например, запустить регулярное выражение, которое проверяет наличие SQL-команд или даже запускает синтаксический анализатор / checker, если он доступен на PHP), если вы хотите убедиться, что загружены только файлы SQL.
Узнайте, что возвращает $ _FILES ['userfile'] ['type']
заменить echo … с помощью echo $ _FILES ['userfile'] ['type'];