нет судьбы
С нами с 27.03.03
Сообщения: 4427
Рейтинг: 4204
|
Добавлено: 30/04/07 в 22:14 |
Реально ли увеличить время таймаут для выполнения пхп и обращения к MySQL не редактируя php.ini?
Например средствами самого php скрипта или .htaccess?
|
|
|
|
1К13!
С нами с 07.05.04
Сообщения: 7721
Рейтинг: 2428
|
Добавлено: 30/04/07 в 22:37 |
@set_time_limit(time in seconds);
только если в .ини не прописано меньшее значение
|
|
|
|
нет судьбы
С нами с 27.03.03
Сообщения: 4427
Рейтинг: 4204
|
Добавлено: 30/04/07 в 22:54 |
Куда это влепить?
Проблема в том, что как я понял по ошибкам, сервер рубин на 30ти секундах, тоесть и в ини тоже самое...
|
|
|
|
programmer
С нами с 08.12.02
Сообщения: 7615
Рейтинг: 5760
|
Добавлено: 30/04/07 в 23:38 |
скорее всего это не сервер а таймаут твоего браузера.
выводи в него что нибудь через flush()
только больше инфы чем 4 кбайта - у меня столько в виртуале было прописано и скрипт дальше будет работать
если хочешь чтобы скрипт в любои случае выполнился юзай
ignore_user_abort(); // в начале скрипта пропиши
|
|
|
|
нет судьбы
С нами с 27.03.03
Сообщения: 4427
Рейтинг: 4204
|
Добавлено: 01/05/07 в 00:04 |
это 100% не браузер
Fatal error: Maximum execution time of 30 seconds exceeded in /home/.../images.inc.php on line 178
|
|
|
|
С нами с 16.10.03
Сообщения: 688
Рейтинг: 392
|
Добавлено: 01/05/07 в 00:24 |
Код: | <?php
set_time_limit(0); // это чтобы Fatal error: Maximum execution time... не было
ignore_user_abort(true); // выполнять скрипт, даже если пользователь закрыл браузер
for (условие) {
// это основной цикл, который занимает много времени
echo ' ';
ob_flush();
flush();
/*********************/
// если скрипт ничего не выводит 10 минут,
// то апач считает его зависшим и прибивает
// чтобы этого не происходило при запуске скрипта из-под апача,
// нужны приведенные выше три строчки
/*********************/
}
?> |
Последний раз редактировалось: Neuromancer (28/05/07 в 15:10), всего редактировалось 1 раз
|
|
|
|
нет судьбы
С нами с 27.03.03
Сообщения: 4427
Рейтинг: 4204
|
Добавлено: 01/05/07 в 01:40 |
Neuromancer писал: | Код: | <?php
set_time_limit(0); // это чтобы Fatal error: Maximum execution time... не было
ignore_user_abort(true); // выполнять скрипт, даже если пользователь закрыл браузер
for (условие) {
// это основной цикл, который занимает много времени
echo ' ';
ob_flush();
flush();
/*********************/
// если скрипт ничего не выводит 10 минут,
// то апач считает его зависшим и прибивает
// чтобы этого не происходило при запуске скрипта из-под апача,
// нужны приведенные выше три строчки
/*********************/
}
?> | |
Солидно! Мастер - не спорю.
Теперь с циклами все нормально, но вот теряет акцес к MySQL. Такое может быть? Если да, то можно как-то выставить удержание соединения с базой данных?
|
|
|
|
programmer
С нами с 08.12.02
Сообщения: 7615
Рейтинг: 5760
|
Добавлено: 01/05/07 в 01:57 |
а как это?
коннект теряет? напиши ошибку чтоли
|
|
|
|
С нами с 19.01.02
Сообщения: 442
Рейтинг: 235
|
Добавлено: 01/05/07 в 08:42 |
Vyacheslav писал: | можно как-то выставить удержание соединения с базой данных? |
mysql_ping()
|
|
|
|
С нами с 21.06.05
Сообщения: 1788
Рейтинг: 1579
|
Добавлено: 01/05/07 в 09:29 |
Airsnake писал: | mysql_ping() |
ага. и обязательно прочитать мануал c коментами ru.php.net/manual/ru/function.mysql-ping.php
|
|
|
|
нет судьбы
С нами с 27.03.03
Сообщения: 4427
Рейтинг: 4204
|
Добавлено: 01/05/07 в 10:25 |
Ок я попробую ее.
Просто описать проблему или ошибку не могу - дело в том, что скрипт выдает свою ошибку конекта к базе и я пока не могу выкопать, что именно ее провоцирует..
|
|
|
|
нет судьбы
С нами с 27.03.03
Сообщения: 4427
Рейтинг: 4204
|
Добавлено: 01/05/07 в 12:34 |
Короче вот часть скрипта, которая отвечает за конект!
Самое интересное, что при всех правильных параметрах для аутентификации в MySQL нихрена не работает!
Код: | <?php
class BxDolMySQL extends BxDolUpdate
{
function _connect()
{
$this -> link = @mysql_pconnect( $this -> full_host, $this -> user, $this -> pass);
echo($this -> full_host . " ");
echo($this -> user . " ");
echo($this -> pass . " ");
echo($this -> link . " ");
if ( !$this -> link )
$this -> _dbError();
elseif ( !$this -> _selectDb() )
$this -> _dbError();
}
function _selectDb()
{
echo("[DB]=" . $this -> db . " ");
return @mysql_select_db( $this -> db, $this -> link );
}
function _dbError( $msg = 'Database access error.' )
{
if ( !DOL_UPD_DEBUG )
$this -> updateError( 'Database access error.<br/>Did you properly edit <b>inc/header.inc.php</b> file?' );
else
$this -> updateError( $msg . '<br/>MySQL says: ' . mysql_error().'<br/>'.$this -> sql_code );
|
С первого раза запускается, но прерывается по ходу выполнения основной части программы. Сейчас пробую еще раз уже нахрен сразу ошибка: 'Database access error. Did you properly edit inc/header.inc.php file?'
|
|
|
|
www.phpdevs.com
С нами с 24.10.02
Сообщения: 16633
Рейтинг: 16105
|
Добавлено: 01/05/07 в 13:04 |
если хостеры адванцед, то посмотри фак на их сервере, там описано как решить этот вопрос.
|
|
Пишу на php/mysql/django за вменяемые деньги.
Обращаться в личку.
|
0
|
|
|
нет судьбы
С нами с 27.03.03
Сообщения: 4427
Рейтинг: 4204
|
Добавлено: 01/05/07 в 19:32 |
Хех... Как раз я не их клиент, но вроде фак там и так доступен. Кстати, лучшего FAQ я еще не видел, очень четко, кратко, доступно и по делу! Я его просмотрел, ничего вроде такого нет что мне надо. По какой тематике хоть смотреть?
|
|
|
|
www.phpdevs.com
С нами с 24.10.02
Сообщения: 16633
Рейтинг: 16105
|
Добавлено: 01/05/07 в 19:51 |
Код: | @mysql_query("set wait_timeout=".(60*10)); |
примерно такую строку сделай, ну число секунд сам укажи нужное. По идее должно помочь.
|
|
Пишу на php/mysql/django за вменяемые деньги.
Обращаться в личку.
|
0
|
|
|
С нами с 16.10.03
Сообщения: 688
Рейтинг: 392
|
Добавлено: 01/05/07 в 19:53 |
попробуй использовать вместо @mysql_pconnect @mysql_connect - т. е., не использовать постоянные соединения с БД
или вместо функций, перед которыми стоит знак @, использовать функции без этого знака. тогда PHP будет выводить все ошибки, связанные с этими функциями
и что выводят операторы echo в скрипте - правильные параметры доступа к БД?
но вообще конечно хорошо бы глянуть на весь скрипт, т. к. иначе это угадайка получается...
Последний раз редактировалось: Neuromancer (28/05/07 в 15:11), всего редактировалось 1 раз
|
|
|
|
нет судьбы
С нами с 27.03.03
Сообщения: 4427
Рейтинг: 4204
|
Добавлено: 01/05/07 в 20:00 |
echo выводит все шоколадно, тем более скрипт работает на небольших базах нормально...
Какие проблемы! Ща закину все модули.
Последний раз редактировалось: Vyacheslav (01/05/07 в 20:11), всего редактировалось 1 раз
|
|
|
|
нет судьбы
С нами с 27.03.03
Сообщения: 4427
Рейтинг: 4204
|
Добавлено: 01/05/07 в 20:08 |
удалил нахер
Последний раз редактировалось: Vyacheslav (03/05/07 в 15:18), всего редактировалось 1 раз
|
|
|
|
нет судьбы
С нами с 27.03.03
Сообщения: 4427
Рейтинг: 4204
|
Добавлено: 01/05/07 в 20:10 |
Там еще несколько , ели не будет хватать добавлю.
Запуск осуществляет index.php
|
|
|
|
С нами с 19.11.03
Сообщения: 3973
Рейтинг: 2362
|
Добавлено: 02/05/07 в 10:28 |
ты бы "Войну и Мир" бы сюда еще запостил...
У тебя PHP как модуль установлен для Apache?
|
|
|
|