У меня есть форма со слишком большим количеством полей. Одно из этих полей:
<form action="go_to_preview.php" role="form" method="post" enctype="multipart/form-data"> <input type="file" name="equip_image" id="equip_image"> </form>
Теперь целью файла go_to_preview.php
является отображение данных, заполненных пользователем в виде меток. Все заполненные данные также содержатся в скрытых полях. Если пользователь находит то, что он / она заполнил, он идеально подходит, тогда пользователь нажимает кнопку отправки, присутствующую в файле go_to_preview.php
. Как только пользователь нажмет кнопку отправки, я добавлю данные, полученные через $_POST
в базу данных. Теперь моя проблема $_POST
с $_POST
(который представляет собой массив данных, присутствующих в скрытых полях). Я хочу, чтобы данные из $_FILES
какие они есть. Как мне это достичь? Может кто-нибудь, пожалуйста, помогите мне в этом отношении? Заранее спасибо.
Общий подход – это сессии:
//go_to_preview.php session_start(); $_SESSION['FILES'] = $_FILES; //final.php session_start(); $files_var = $_SESSION['FILES']; //use $files_var unset($_SESSION['FILES']);
Если я правильно понял ваш вопрос, вы спрашиваете, можете ли вы передать как $_FILES
и $_POST
для обработки в go_to_preview.php
, ответ да.
Массив $_FILES
заполняется, когда вы выбрали изображение с помощью элемента equip_image. При отправке вашей формы любые указанные данные POST
в этой форме будут отправляться в заголовках в go_to_preview.php
, также $_FILES
массив $_FILES
, это отдельно от вашего массива $_POST
.
В вашем go_to_preview.php
вы можете получить содержимое обоих массивов:
$file = $_FILES['equip_image']; $data = $_POST['form_data'];
Если вы хотите удалить эти данные, которые вы просто вызываете
unset($_SESSION['FILES']);