internet explorer
Имеется 4 текстовых фаила в каждом из ни по 60 000 записей(около 4GB).
С помощю php загружаю данные в 4 таблицы mysql. После первого файла (таблицы) internet explorer выдает сообшение "The page cannot be displayed". Но успевает загрузить 3 файла, а четвертый не загружается.
Как можно заставить броузер как бы не засыпать, чтобы успевал загружать все файлы ?
set_time_limit(<нужное для выполнения скрипта количество секунд>);
Да я эту строчку написал, она устанавливает время соединения с базы данных.С эти м у меня поблем нету у меня через некоторое время броузер проссто засыпает. Запрос на столь длинный что броузер не успевает получить ответа с mysql.
Эта строчка указывает интерпетатору РНР на ограничение времени выполнения скрипта. Скрипт ждет пока отработает SQL-запрос, ну а поскольку запросов этих у тебя много то и скрипт будет работать долго. Лечится твоя проблема просто как и сказал mfender: в самом начале скрипта поставь set_time_limit(0); и все. Вылетать по таймауту ничего не должно - я лично видел скрипты которые работали так больше часа (работа с БД).
Вот именно, дело в том что броузеру не хватат времени получить ответ от базы.
1) Ответ от БД получает не браузер, а скрипт
2) Браузеру глубоко навалить на то сколько времени там что выполняется. Он будет ждать (кстати на этом эффекте были основаны чаты до появления AJAX. Технология называлась PushServer)
3) Строчка set_time_limit(0); желательно должна идти первой в скрипте
4) Если не нравится запускать через браузер - можно запустить из командной строки операционной системы сервера.
Делается просто:
а) даем скрипту права на выполнение командой chmod;
б) прописываем путь к интерпретатору. В самое начало скрипта до скобки <? добавляем строку #!/usr/local/bin/php (если путь у тебя в системе отличается от моего - измени соответствующим образом)
в) запускаем на выполнение скрипт ./script.php
PS Инструкция к *nix системам. На windows как это делать не знаю ибо с ней не работаю.
Проблема решена, я увеличил время ожидания броузера ответа от сервера