Я бы не рекомендовал использовать базу данных для содержимого файлов, потому что база данных ограничена, когда дело доходит до этого. Конечно, есть поля text
, в которые вы можете поместить контент, но даже они в определенной степени ограничены. В любом случае, тип поля text
в будущем не рекомендуется. Я привык бы стараться держаться подальше от этого, если только вам это действительно не нужно. Вы также можете легко открывать содержимое при необходимости, используя fopen
, fgets
, fclose
. Или fread
, или file_get_contents
вместо сохранения его в базе данных, почему бы не сохранить его в виде файла на сервере, используя file_put_contents
.
Однако, просто заметив, что, возможно, вы ссылаетесь на имя файла, хранящегося в базе данных, если это так, то это будет прекрасно работать, и использование varchar (255) должно быть совершенно нормально.
В этом случае убедитесь, что для набора форм есть method = "post" и action = "what.php". И ENCTYPE = "multipart/form-data"
. Чем обычная кнопка отправки вызовет действие, и вы можете обработать его прямо оттуда. Вы можете использовать move_uploaded_file
, чтобы сохранить его в пути на сервере, или, если это текстовый файл, и вам нужно отредактировать его, один из упомянутых выше методов должен это сделать. В противном случае, чтобы получить файл из формы, используйте предопределенный массив PHP $_FILES
. Вам нужно получить значения $_FILES['file_input_name']['tmp_name']
и $FILES['file_input_name']['name']
, где file_input_name
= атрибут name для тега для ввода файла в форму.