Xwab
Форумыnavigate_nextНебольшие вопросы по PHP/MySQL

Удаляется Текст при загрузке файла
Сообщения
@chino@

Здравствуйте,

Делаю на сайте загрузку файлов.
Похоже как тут, есть форма пару инпутов а потом отделенная форма для загрузки файлов.

так вот:
Если заполню поля а потом загружу файл то страница перезагружается как понимаю и удаляется текст с инпутов.

Как сделать так что бы текст с инпутов не удалялся

22 Янв 2017, 17:55
Jaguar

Привет. При передаче данных присваивай полям ввода то что было передано.
Т.е примерно так <input type="text" value="<?=$_POST['text']?>"
Самый примитивный и небезопасный вариант

22 Янв 2017, 18:22
@chino@

Jaguar, у меня две отделенных форм.
одна форма текстовые данные, вторая независимая форм загрузка файлов.
Вы имеете в виду объединит в одну форм?
и то что передастся то в value=$peremenaya подставлять значение?

22 Янв 2017, 18:31
Jaguar

@chino@, чтото типа такого нужно сделать
<?
if(is_uploaded_file($_FILES["filename"]["tmp_name"]))
{$filename='загружен файл с именем '.$_FILES["filename"]["name"];}
else $filename='';
if (isset($_POST['text'])) $text=$_POST['text'];
else $text='';
?>
<b> Форма для загрузки файлов </b>
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="text" name="<?=$text?>"><br>
<=?$filename?>
<input type="file" name="filename"><br>
<input type="submit" value="Загрузить"><br>
</form>

т.е принажатии на кнопку загрузить отправляются пост данные. Скрипт проверяет есть ли они. Если есть то подставляет, если нет, то оставляет поле пустым. не знаю будет ли работать этот пример(не проверял), но самый простой способ примерно такой

22 Янв 2017, 18:54
@chino@

Jaguar, понял спасибо.

Скажите пожалуйста а обратно подставляя значения в input фильтровать рекомендовано?

22 Янв 2017, 19:07
Jaguar

@chino@, разумеется. Ведь можно в текстовое поле подставить кусок кода, и сломать весь скрипт. Также с форматами файлов, которые разрешены к загрузке нужно быть аккуратным. Потому-что могут загрузить шел, и взломать сайт...

22 Янв 2017, 19:12
@chino@

Jaguar, Пока что все понял. Спасибо.

P.S С 2013 ничего не писал и позабыл элементарное

22 Янв 2017, 19:16
Jaguar

@chino@, без практики так оно и бывает

22 Янв 2017, 19:21
Ответить на тему