Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.02.2012, 14:16   #1
primusx
Пользователь
 
Регистрация: 08.07.2011
Сообщений: 29
Вопрос Как создать мониторинг сайтов

Добрый день всем програмистам. Подскажите пожалуйста откда мне копать. У меня есть таая проблема:
Есть парочка сайтов на которые мне необходимо вести мониторинг в виде
Сайт 1 Пинг идет Активация логина успешна
Сайт 2 Пинг идет Активация логина успешна
Сайт 3 Пинг идет Активация логина успешна

Где можно взять скрипт или как его самому написать для того чтобы на моем сайте была табличка и чтобы она сама обновлялась при заходе на эту страничку.
В этой таблице было наименование сайта (любое имя хоть сайт 1) первым делом проверялся пингуется ли он если да то была к примеру надпись пинг есть. если нет то пинга нет, и если это возможно в третей колонке показывалось проходит ли регистрация логина на сайте (чтобы скрипт сам пробывал зайти на сайт под определенным логином и если регистрация проходила то появлялась бы сообщение к примеру Активация логина успешна.
Для начала бы мне просто чтобы проверяся бы сайт на пинг .
Подскажите как это сделать или может я не в том разделе отписался?
primusx вне форума Ответить с цитированием
Старый 13.02.2012, 14:30   #2
TranceSmile
Смайлик :)
Форумчанин
 
Аватар для TranceSmile
 
Регистрация: 12.12.2010
Сообщений: 445
По умолчанию

Ну Curl в помощь
Самый перспективный framework Yii (c)
TranceSmile вне форума Ответить с цитированием
Старый 13.02.2012, 20:18   #3
primusx
Пользователь
 
Регистрация: 08.07.2011
Сообщений: 29
По умолчанию

Цитата:
Сообщение от TranceSmile Посмотреть сообщение
Ну Curl в помощь
нашел скрипт
но он выводит работает ли сайт если его ввести в строку а как можно его переписать чтобы к примеру он сразу проверял один какой нибудь сайт?
PHP код:
<?php

function isSiteAvailable$url )
{
    
//проверим, что этот url вообще корректный
    
if( !filter_var($urlFILTER_VALIDATE_URL) ) return 'Указан некорректный url!';

    
//создадим соединение с помощью curl
    
$cl curl_init($url);
     
curl_setopt($cl,CURLOPT_CONNECTTIMEOUT,10);
     
curl_setopt($cl,CURLOPT_HEADER,true);
     
curl_setopt($cl,CURLOPT_NOBODY,true);
     
curl_setopt($cl,CURLOPT_RETURNTRANSFER,true);

     
//получим ответ
     
$response curl_exec($cl);

     
curl_close($cl);

     if( 
$response ) return 'Похоже, что сайт в сети и работает!';

     return 
'Опаньки, сайт в офлайне или домен не существует!';
}

//проверим, что сайт существует и в сети
if( isset($_GET['url']) && trim($_GET['url']) != '' )
{
    
$response isSiteAvailable$_GET['url'] );
    
$message '<div class="response">'.$response.'</div>';
}

?>








<?php echo $message?>

<form action="" method="get">

    Укажите нужный url или нажмите на ссылку для проверки:<br />



    <input name="url" type="text" value="<?php echo $_GET['url']; ?>" />

</form>
primusx вне форума Ответить с цитированием
Старый 13.02.2012, 20:59   #4
primusx
Пользователь
 
Регистрация: 08.07.2011
Сообщений: 29
По умолчанию

Нашел еще один скрипт он отдельно проверяет один сайт, а как сделать чтоб он проверял к примеру 3 сайта и в списке выводил результат. ПРобывал копировать скрипт несколько раз он выдает ошибки скрипта.
PHP код:
google.ru
<?php

       
if (isDomainAvailible('http://google.ru'))
       {
               echo 
"Доступен";
       }
       else
       {
               echo 
"Не доступен";
       }

       
//возвращает true, если домен доступен и false, если нет
       
function isDomainAvailible($domain)
       {
               
//проверка на правильность url
               
if(!filter_var($domainFILTER_VALIDATE_URL))
               {
                       return 
false;
               }

               
//инициализация curl
               
$curlInit curl_init($domain);
               
curl_setopt($curlInit,CURLOPT_CONNECTTIMEOUT,10);
               
curl_setopt($curlInit,CURLOPT_HEADER,true);
               
curl_setopt($curlInit,CURLOPT_NOBODY,true);
               
curl_setopt($curlInit,CURLOPT_RETURNTRANSFER,true);

               
//получение ответа
               
$response curl_exec($curlInit);

               
curl_close($curlInit);

               if (
$response) return true;
               return 
false;
       }
?>
primusx вне форума Ответить с цитированием
Старый 14.02.2012, 00:27   #5
TranceSmile
Смайлик :)
Форумчанин
 
Аватар для TranceSmile
 
Регистрация: 12.12.2010
Сообщений: 445
По умолчанию

Код:
<?php 

function isSiteAvailable( $url ) 
{ 
    //проверим, что этот url вообще корректный 
    if( !filter_var($url, FILTER_VALIDATE_URL) ) return 'Указан некорректный url!'; 

    //создадим соединение с помощью curl 
    $cl = curl_init($url); 
     curl_setopt($cl,CURLOPT_CONNECTTIMEOUT,10); 
     curl_setopt($cl,CURLOPT_HEADER,true); 
     curl_setopt($cl,CURLOPT_NOBODY,true); 
     curl_setopt($cl,CURLOPT_RETURNTRANSFER,true); 

     //получим ответ 
     $response = curl_exec($cl); 

     curl_close($cl); 

     if( $response ) return 'Похоже, что сайт в сети и работает!'; 

     return 'Опаньки, сайт в офлайне или домен не существует!'; 
}
echo isSiteAvailable("http://site.ru");
echo isSiteAvailable("http://site2.ru");
echo isSiteAvailable("http://site3.ru");
}
Вот. Если что не понятно. То пишите в аську(433741134) или скайп (trance-smile).
Самый перспективный framework Yii (c)
TranceSmile вне форума Ответить с цитированием
Старый 15.02.2012, 07:15   #6
primusx
Пользователь
 
Регистрация: 08.07.2011
Сообщений: 29
По умолчанию

Спасибо большое сейчас проверю
primusx вне форума Ответить с цитированием
Старый 15.02.2012, 18:32   #7
primusx
Пользователь
 
Регистрация: 08.07.2011
Сообщений: 29
По умолчанию

чтото не запускается выдается ошибка
Parse error: syntax error, unexpected '}' in Z:\home\localhost\www\1\index.php on line 65
primusx вне форума Ответить с цитированием
Старый 16.02.2012, 11:39   #8
TranceSmile
Смайлик :)
Форумчанин
 
Аватар для TranceSmile
 
Регистрация: 12.12.2010
Сообщений: 445
По умолчанию

самый последний знак "}" лишний
Самый перспективный framework Yii (c)
TranceSmile вне форума Ответить с цитированием
Старый 16.02.2012, 18:42   #9
primusx
Пользователь
 
Регистрация: 08.07.2011
Сообщений: 29
По умолчанию

Спасибо работает только выдает в формате
"Похоже, что сайт в сети и работает!Похоже, что сайт в сети и работает!Похоже, что сайт в сети и работает!"
А как можно сделать чтоб было
Сайт1 - Похоже, что сайт в сети и работает!
Сайт2 - Похоже, что сайт в сети и работает!
Сайт3 - Похоже, что сайт в сети и работает!
primusx вне форума Ответить с цитированием
Старый 17.02.2012, 15:36   #10
TranceSmile
Смайлик :)
Форумчанин
 
Аватар для TranceSmile
 
Регистрация: 12.12.2010
Сообщений: 445
По умолчанию

Код:
echo "<p>Сайт 1 - ".isSiteAvailable("http://site.ru")."</p>";
echo "<p>Сайт 2 - ".isSiteAvailable("http://site2.ru")."</p>";
echo "<p>Сайт 3 - ".isSiteAvailable("http://site3.ru")."</p>";
Самый перспективный framework Yii (c)
TranceSmile вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как качать флешь игры с сайтов? MoT9I Свободное общение 3 18.08.2009 18:39