Ответ 1
Вы должны использовать enctype="multipart/form-data"
для загрузки файлов, это также будет хорошо работать для не файловых форм загрузки.
Мне нужна помощь в моей форме. Там есть сочетание ввода, textarea и загрузки файлов, которые я хочу ввести в базу данных.
Что я использую в? Я использую атрибут нормальной формы:
<form action="" method="">
или
<form enctype="" action="" method="">
Пожалуйста, имейте в виду, что я должен сделать это на одной странице, и загрузка изображения должна быть выполнена вместе с другим вводом текста.
Спасибо за ваше время.
Вы должны использовать enctype="multipart/form-data"
для загрузки файлов, это также будет хорошо работать для не файловых форм загрузки.
Вам нужно установить enctype="multipart/form-data"
и использовать method="post"
для любой формы, включающей ввод файла. Это не помешает вам включить другие типы полей.
(Способ, которым эти поля будут отправляться на сервер, изменится, но библиотека разбора форм будет иметь дело с различиями автоматически, вам нужно только беспокоиться о них, если вы сами разбираете исходный ввод).
<form enctype="multipart/form-data" method="post" action="submit.php">
submit.php
является в этом случае внешним PHP script, который обработает вашу форму (если вы решите использовать PHP). Но вы можете назвать .php
script все, что вам нравится (например, cats.php
).
Загруженные данные файла/изображения будут сохранены внутри $_FILES
, и все текстовое поле, текстовое поле, переключатели, флажки и другие данные будут находиться внутри суперглобального $_POST
.
Когда submit.php
получает представленную форму, вы можете делать на ней все виды обработки, такие как подтверждение того, что пользователь отправил правильный тип файла/изображения, сохраните путь к файлу файла/изображения в вашей локальной базе данных (клиент/сервер или файловая система) и многое другое.
Обязательно проверяйте и клиентскую сторону пользователя, и серверную сторону.
<form enctype="multipart/form-data" action="yourpage.php" method="post">
Вам понадобится атрибут enctype
, если вы хотите, чтобы загрузка файла работала. FYI, форма может содержать все типы полей, включая загрузку файлов, и работать очень хорошо.
В классическом ASP мне приходилось получать доступ к моему текстовому полю как load.getFileData("textfield")
вместо стандартного Request("textfield")
при использовании enctype = "multipart/form-data"