2012-03-30 6 views
0

У меня есть проект PHP, который передает большие файлы между клиентом и сервером. Есть несколько вещей, о которых мне интересно. Во-первых, как я могу гарантировать, что сеанс остается в живых, даже если клиент имеет медленное подключение к Интернету, и загрузка занимает больше времени, чем позволяет обычный тайм-аут сеанса? И тогда, как я также могу убедиться, что если клиент отключится или что-то еще, что сеанс умирает так, как ожидалось? Есть ли простой способ проверить это, кроме передачи большого файла, надеясь, что это займет больше времени, чем обычный тайм-аут, а затем тестирование isset($_SESSION['var'])? Благодарю.Сохранение сеанса PHP во время загрузки файла/загрузки

+1

используйте запрос ajax каждые x интервал. – gorelative

ответ

0

Когда вы начинаете загрузку, вам нужно также запустить ajax-вызовы в конечную точку на вашем сервере, которая обновит сеанс с интервалом на несколько минут меньше, чем ваш тайм-аут сеанса. Это обновит сеанс. Когда вы загружаете сообщение об ошибке или завершаете, вам необходимо остановить аякс-вызовы. Для загрузки вы можете использовать YUI или любую другую библиотеку, которая предоставляет API для отслеживания прогресса/ошибок загрузки.

Смежные вопросы