И нужно как-то сделать чтобы если текста нет (например сайт лежит) то было еще 10 попыток его получения, и перед каждой писался номер попытки, а в конце писалось в общем удачно или нет прошло.
А если сайт нормально работает, то например выдать его текст исходный
Пробовал такой код:
for($i = 1; $i <=10; $i++){
echo "\r\nParsing. Attempt # $i\r\n";
if($test == ''){
echo "\r\nAttempt failed\r\n";
$test;
break;
}
else
echo $test;
}
Работает некорректно. Если сайт работает, то он 10 раз выдает его исходных код. А нужно 1 раз. Подскажите что не так пожалуйста
Спустя 5 минут, 21 секунда (8.06.2012 - 21:10) Игорь_Vasinsky написал(а):
))) не проще file_get_content() ?
сайт есть - будет контент
сайт лежит - будет false
курлом нужно читать ответ сервера в заголовках.
или file_get_content() не false - запускай курл.
сайт есть - будет контент
сайт лежит - будет false
курлом нужно читать ответ сервера в заголовках.
или file_get_content() не false - запускай курл.
Спустя 3 минуты, 15 секунд (8.06.2012 - 21:13) Bratishka написал(а):
Т.е. перед тем как курл запустить сделать file_get_content(адрес сайта), и если будет текст, то запускать курл, а если нет - то сайт лежит? А как сделать тогда 10 попыток проверить, вдруг сайт очнется
Спустя 1 час, 33 минуты, 24 секунды (8.06.2012 - 22:47) walerus написал(а):
Игорь_Vasinsky Bratishka file_get_content устроит если только не нужны куки и прочая лабуда, можно и курлом проверять заголовки.
вот так нужно, а у Вас он только при НЕ получении контента остановится.
там уже разбирать ответ сервера, ну и перед этим проверить, не равен ли пустоте, ответ от курла.
$info = curl_getinfo( $ch );
for($i = 1; $i <=10; $i++)
{
echo "\r\nParsing. Attempt # $i\r\n";
if( trim( $test ) != '' )
{
echo "\r\nAttempt failed\r\n";
$test;
break;
}
else
echo $test;
}
вот так нужно, а у Вас он только при НЕ получении контента остановится.
Спустя 22 минуты, 20 секунд (8.06.2012 - 23:09) Bratishka написал(а):
walerus
не совсем получается. Перенаправил этот сайт на 127.0.0.1, т.е. не работает он. Но 10 попыток нету. 1 попытка и все
Сделал trim( $test ) != '', работает неправильно, сразу все 10 попыток якобы делает. Не может так быть.
А как сделать чтобы если попытка прошла успешно то просто шел дальше код выполнять? просто убрать else echo $test; и все?
не совсем получается. Перенаправил этот сайт на 127.0.0.1, т.е. не работает он. Но 10 попыток нету. 1 попытка и все
Сделал trim( $test ) != '', работает неправильно, сразу все 10 попыток якобы делает. Не может так быть.
А как сделать чтобы если попытка прошла успешно то просто шел дальше код выполнять? просто убрать else echo $test; и все?
Спустя 7 минут, 38 секунд (8.06.2012 - 23:17) Игорь_Vasinsky написал(а):
Цитата |
file_get_content устроит если только не нужны куки и прочая лабуда, |
да знаю я
Цитата |
можно и курлом проверять заголовки. |
Цитата |
курлом нужно читать ответ сервера в заголовках. |
проверить доступность экономнец 1й функцией чем библиотекой
Спустя 36 минут, 37 секунд (8.06.2012 - 23:53) Bratishka написал(а):
куки и прочая лабуда нужна, поэтому курлом хочу делать я
Спустя 4 минуты, 54 секунды (8.06.2012 - 23:58) Игорь_Vasinsky написал(а):
))). как со стенкой разговариваю.