Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: глюк с временем выполнения

Сообщения:  [1-10]   [11-11] 

 
 автор: ec_stasis   (01.06.2006 в 20:27)   письмо автору
 
   для: kaoz   (31.05.2006 в 19:51)
 

Скобочки не хватает в конце запроса...

   
 
 автор: kaoz   (01.06.2006 в 08:19)   письмо автору
 
   для: kaoz   (31.05.2006 в 21:02)
 

даже если прибегнуть к оптимизации, 100 мб файл работать будет, но максимальный размер лога 2 Гб... и тогда время выполнения скрипта будет всеравно превышать максимально возможное разрешенное время выполнения..

   
 
 автор: kaoz   (31.05.2006 в 21:02)   письмо автору
 
   для: kaoz   (31.05.2006 в 19:51)
 

???

   
 
 автор: kaoz   (31.05.2006 в 19:51)   письмо автору
 
   для: kaoz   (31.05.2006 в 19:17)
 

сделал так:

<?
//..
// Подрубаю файл с функциями
// конетюсь к базе
//..
foreach($lines as $line)
  {
    
$string explode($sep2$line);    // разбор строки на параметры
    
firewall();
  }
//..
//..
?>



<?
function firewall()
  {
    global 
$string;
    
$ResultCode = (integer) $string[10];
    
$ProcessingTime = (integer) $string[18];
    
$ProcessingTimeDelta = (integer) $string[19];
    
    
$separator "/";
    
$date explode($separator$string[1]);
    
$LogDate $date[2]."-".$date[1]."-".$date[0];
    
$string[30] = str_replace ('\n'''$string[30]);
    
    
$sql "INSERT INTO firewalllog VALUES 
            (DEFAULT, 
            '
$string[0]',
            '
$LogDate',
            '
$string[2]',
            '
$string[3]',
            '
$string[4]',
            '
$string[5]',
            '
$string[6]',
            '
$string[7]',
            '
$string[8]',
            '
$string[9]',
            '
$ResultCode',
            '
$string[11]',
            '
$string[12]',
            '
$string[13]',
            '
$string[14]',
            '
$string[15]',
            '
$string[16]',
            '
$string[17]',
            '
$ProcessingTime',
            '
$ProcessingTimeDelta',
            '
$string[20]',
            '
$string[21]',
            '
$string[22]',
            '
$string[23]',
            '
$string[24]',
            '
$string[25]',
            '
$string[26]',
            '
$string[27]',
            '
$string[28]',
            '
$string[29]',
            '
$string[30]';";
     
mysql_query($sql);
     if (!
$query) echo mysql_error();
  }
?>


сначала сохранял элементы массива в переменных и использовал их в запросе, работало, но умирало.
но потом сделал как написано выше..(но чето база ругается, неподскажите что не так??)

   
 
 автор: kaoz   (31.05.2006 в 19:17)   письмо автору
 
   для: Unkind™   (31.05.2006 в 18:05)
 

ок... я сделал функцию... но добавив в нее запись в БД скрипт все равно вешается...

   
 
 автор: Unkind™   (31.05.2006 в 18:05)   письмо автору
 
   для: Trianon   (31.05.2006 в 18:00)
 

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

<?php
include "config.php";

/*
etc
*/
?>


будет выполнятся дольше в "тысячи раз", чем


<?php
/*
Тут содержимое файла config.php
*/

/*
etc
*/
?>

   
 
 автор: Trianon   (31.05.2006 в 18:00)   письмо автору
 
   для: kaoz   (31.05.2006 в 17:25)
 

Вы внимательно читали тему, из которой выдрали код? Ваш предшественник тоже спорил со мной по этому вопросу.
Сейчас Вы его практически один в один повторяете. Вам НЕ нужно увеличивать время выполнения скрипта.
Вам ничего не мешает написать код так, чтоб он успевал отработать. Я почти наверняка уверен в этом.

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

   
 
 автор: kaoz   (31.05.2006 в 17:25)   письмо автору
 
   для: kaoz   (31.05.2006 в 15:26)
 

вместо инклуда сделал функцию и вызываю ее в разборе строки -> заработало...

вопрос: почему инклуд вешал скрипт?

и еще вопрос: как увеличить время разрешенного выполнения скирпта только на время выполнения??

   
 
 автор: kaoz   (31.05.2006 в 15:26)   письмо автору
 
   для: kaoz   (31.05.2006 в 15:11)
 

чуть расширил обработчик

читает до шестого блока и выкидывает по окончанию времени выполнения

   
 
 автор: kaoz   (31.05.2006 в 15:11)   письмо автору
 
   для: kaoz   (31.05.2006 в 14:12)
 

глуха как-то =(

   

Сообщения:  [1-10]   [11-11] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования