Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Очистка массива $_FILES

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: бесконечная загрузка файла.
WP_PANDA
Отправлено: 04 Мая, 2014 - 19:40:50
Post Id


Новичок


Покинул форум
Сообщений всего: 40
Дата рег-ции: Май 2013  


Помог: 0 раз(а)




Загружаю файл на сервер через input type='file' во временную директорию, и вывожу его его содержимое на страницу, однако после перезагрузки страницы файл загружается по новой, эффект останавливается только переходом на другую страницу а затем снова на страницу со скриптом.

Как понял это дело продолжает храниться в $_FILES;
установка $_FILES = array();
не помогает
 
 Top
IllusionMH
Отправлено: 04 Мая, 2014 - 19:43:40
Post Id



Активный участник


Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011  
Откуда: .kh.ua


Помог: 242 раз(а)




WP_PANDA, для предотвращения повторной отправки POST запроса, необходимо выполнить перенаправление на эту же страницу из скрипта.

Даныне о загрузке поместить в сессию и из нее получать их на новой странице.
 
 Top
OrmaJever Модератор
Отправлено: 04 Мая, 2014 - 19:46:20
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




WP_PANDA пишет:
Как понял это дело продолжает храниться в $_FILES;

Нет, он не хранится, а браузер его снова передаёт, это проблема браезеров что после обновления страницы он снова отправляет post данные. Есть 2 метода отойти проблему
1) После загрузки делать редирект.
2) Сессии. Генерировать случайный хеш, затем писать его в форму и сессию, а при загрузке файла сравнивать хеш с формы с хешем из сессии.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
WP_PANDA
Отправлено: 04 Мая, 2014 - 19:56:38
Post Id


Новичок


Покинул форум
Сообщений всего: 40
Дата рег-ции: Май 2013  


Помог: 0 раз(а)




Всем спасибо, понял.
 
 Top
Edwvee
Отправлено: 05 Мая, 2014 - 10:19:12
Post Id


Частый гость


Покинул форум
Сообщений всего: 195
Дата рег-ции: Июнь 2013  


Помог: 1 раз(а)




OrmaJever пишет:
Нет, он не хранится, а браузер его снова передаёт, это проблема браезеров что после обновления страницы он снова отправляет post данные. Есть 2 метода отойти проблему
1) После загрузки делать редирект.
2) Сессии. Генерировать случайный хеш, затем писать его в форму и сессию, а при загрузке файла сравнивать хеш с формы с хешем из сессии.

Так если файл во временной директории, то после смерти скрипта файл удаляется, нет?
 
 Top
OrmaJever Модератор
Отправлено: 05 Мая, 2014 - 12:58:36
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Edwvee пишет:
Так если файл во временной директории, то после смерти скрипта файл удаляется, нет?

Честно сказать не знаю, удаляется он после смерти скрипта или его удаляет сборщик мусора попозже. Зачем вам это?


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
WP_PANDA
Отправлено: 05 Мая, 2014 - 18:38:52
Post Id


Новичок


Покинул форум
Сообщений всего: 40
Дата рег-ции: Май 2013  


Помог: 0 раз(а)




Edwvee пишет:

Так если файл во временной директории, то после смерти скрипта файл удаляется, нет?


удаляется
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB