Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Помогите модернизировать скрипт
Форумы портала PHP.SU » PHP » Программирование на PHP » Помогите модернизировать скрипт

Страниц (1): [1]
 

1. Vneo93w - 02 Июня, 2008 - 12:24:07 - перейти к сообщению
Вот скрипт, который обращается по заданной ссылке, с какими либо командами, при ответе с ошибкой он прекращает дальнейшую работу скрипта.
PHP:
скопировать код в буфер обмена
  1. <?
  2.     while (!stristr ('' . $fileview, 'Слово при старте'))
  3.     {
  4.       $array = @file('Ссылка на страницу');
  5.      
  6.       foreach ($array as $string)
  7.       {
  8.         $fileview = '' . $fileview . ' ' . $string;
  9.       }
  10.  
  11.       if (stristr ('' . $fileview, 'Слово ошибки'))
  12.       {
  13.         print 'Error';
  14.         exit ();
  15.       }
  16.     }
  17. ?>

Как модернизировать данный скрипт, чтоб он не сразу проверял результат выполнения скрипта, а например чер 1 мин, и при ошибке повторял отправку запроса, и если ошибка проходила с повторной ошибкой, о выводил уже print 'Error';
2. valenok - 02 Июня, 2008 - 15:42:46 - перейти к сообщению
Сделать список тех запросов или типов запросов которые не удались.
Так чтоб была задержка можно поставить в начале функцию sleep(60);
Не забудьте установить set_time_limit(70); и известить о том что скрипт
будет жать с минуту.

Можно сразу генерировать результат и записывать его в сессию, а на стороне клиента через минуту джсом запрошашивать содержимое.
Вообщем от флуда я ставлю всегда sleep(10) и всё.

А что такое
'' . $fileview
?
3. Vneo93w - 02 Июня, 2008 - 17:02:45 - перейти к сообщению
$fileview - там просто пустота, можно было не писать.

Напиши пожалуйста пример скрипта, а то я совсем запутался, я со временим не работал.
Буду сильно благодарен........
4. scuter - 02 Июня, 2008 - 17:40:34 - перейти к сообщению
можно попробовать так,
PHP:
скопировать код в буфер обмена
  1. class mycalss
  2. {
  3.         function intors()
  4.         {
  5.                 try {
  6.                         while (!stristr ('' . $fileview, 'Слово при старте'))
  7.                     {
  8.                       $array = @file('Ссылка на страницу');
  9.                      
  10.                       foreach ($array as $string)
  11.                       {
  12.                         $fileview = '' . $fileview . ' ' . $string;
  13.                       }
  14.                     }
  15.                 }
  16.                 catch (mycalss $e)
  17.                 {
  18.                         while (!stristr ('' . $fileview, 'Слово при старте'))
  19.                     {
  20.                       $array = @file('Ссылка на страницу');
  21.                       foreach ($array as $string)
  22.                       {
  23.                         $fileview = '' . $fileview . ' ' . $string;
  24.                       }
  25.                     }
  26.                 }
  27.                 catch (mycalss $e)
  28.                 {
  29.                         if (stristr ('' . $fileview, 'Слово ошибки'))
  30.                         {
  31.                           print 'Error';
  32.                         exit ();
  33.                         }
  34.                 }
  35.         }
  36. }
5. Vneo93w - 02 Июня, 2008 - 17:44:31 - перейти к сообщению
а чему равна переменная $e?
6. scuter - 02 Июня, 2008 - 17:55:55 - перейти к сообщению
Vneo93w пишет:
а чему равна переменная $e?

ты можешь поэкспериментировать и посмотреть чему она ровна,
для этого есть print_r.
7. Vneo93w - 03 Июня, 2008 - 13:23:47 - перейти к сообщению
что-то не работает, вроде ошибок не выдает, но и по ссылке не обращается.
(Добавление)
а что делать если на сервере ограничения
Maximum execution time of 30 seconds
Как исправить скрипт чтоб он отправлял ссылку а затем не отключаясь от сессии проверял завершения.
8. scuter - 04 Июня, 2008 - 03:15:52 - перейти к сообщению
есть функция которая продляет время работы скрипта.
9. Vneo93w - 04 Июня, 2008 - 11:08:31 - перейти к сообщению
какая?
set_time_limit(0); не помогает.

 

Powered by ExBB FM 1.0 RC1