Cкрипт на php не возвращает ответ

123 4
savage
На сайте с 10.01.2007
Offline
224
2236

Через форму идет заргузка файла на ~8000 строк примерно такого формата:

товар#цена#кол-во на складе

дальше этот файл разбирается в php-скрите на сервере и осуществляются изменения в БД, примерно так:

UPDATE col='кол-во на складе', price='цена' WHERE prod='товар'

Скрипт успешно отрабатывает, т.е. изменения все вносятся, скрипт доходит до конца(пишу лог), но не возвращает ответа в браузер, браузер висит.

Увеличивал max_execution_time в php.ini

Timeout в httpd.conf

и даже в браузере ReceiveTimeout в HKEY_CURRENT_USER\Software\Microsoft\Windows\Current

Version\Internet Settings\ReceiveTimeout для ie - ничего не помогает

~1000 записей обрабатываются нормально, т.е. в браузер ответ приходит, а дальше затык. Помогите, плиз - что делать? Гугл пока не помогает.

Купить / продать сайт ( https://www.telderi.ru/?pid=ca1f70 ) | Недорогой и надежный хостинг ( https://www.get-host.ru )
Tortemon
На сайте с 09.07.2011
Offline
62
#1

set_time_limit(0); - пробовали?

Веб и мобильная разработка [PHP, JS, Golang, Python, Java] (/ru/forum/998064)
savage
На сайте с 10.01.2007
Offline
224
#2
Tortemon:
set_time_limit(0); - пробовали?

Нет не пробовал - щас попробую.

Tortemon
На сайте с 09.07.2011
Offline
62
#3
savage:
Нет не пробовал - щас попробую.

Перед началом скрипта надо засунуть, т.е сразу после объявления интерпретатора.

savage
На сайте с 10.01.2007
Offline
224
#4
Tortemon:
Перед началом скрипта надо засунуть, т.е сразу после объявления интерпретатора.

Перед началом скрипта - скрипт сразу завершается, у меня обрабатывает форму тот же скрипт, что и выводит форму. Пробую сейчас в конце скрипта, но не понятна сама ситуация - почему так происходит и ответ не возвращается в браузер и браузер висит.

Tortemon
На сайте с 09.07.2011
Offline
62
#5
savage:
Перед началом скрипта - скрипт сразу завершится.

Почему?...

Tortemon добавил 20.11.2011 в 22:25

savage:
Пробую сейчас в конце скрипта, но не понятна сама ситуация - почему так происходит и ответ не возвращается в браузер и браузер висит.

Он висит или какую-нибудь ошибку выдает?

savage
На сайте с 10.01.2007
Offline
224
#6
Tortemon:
Почему?...
Он висит или какую-нибудь ошибку выдает?

Щас вроде пошел, пробую. Браузер просто висит -если дать ему повисеть примерно с часок, то выдаст невозможно отобразить страницу.

Tortemon
На сайте с 09.07.2011
Offline
62
#7
savage:
Щас вроде пошел, пробую. Браузер просто висит -если дать ему повисеть примерно с часок, то выдаст невозможно отобразить страницу.

Обычно такая ошибка возникает когда сервер разрывает соединение. Если функцию, описанную выше, поставили перед кодом и запустили скрипт, все загрузиться.

А вообще, рекомендую использовать flush(); для постепенного вывода информации в браузер. (Тем более в таких больших скриптах).

R
На сайте с 28.04.2007
Offline
155
Rel
#8

Покажите код в личку, постараюсь помочь. Функция set_time_limit(0) может не работать, если в php включен safe_mode.

Дешевое продление и регистрация .RU/.РФ в RU-CENTER - 190 руб. (/ru/forum/758778) в розницу. http://nic.regdomains.ru (http://nic.regdomains.ru) - регистрация и продление доменов в автоматическом режиме.
savage
На сайте с 10.01.2007
Offline
224
#9
Rel:
Покажите код в личку, постараюсь помочь. Функция set_time_limit(0) может не работать, если в php включен safe_mode.

safe_mode выключен, но set_time_limit(0) даже на 2000 записей не сработал.

Tortemon
На сайте с 09.07.2011
Offline
62
#10
savage:
safe_mode выключен, но set_time_limit(0) даже на 2000 записей не сработал.

Хм... Листинг сможете скинуть (хотя бы начало)?

123 4

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий