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

Форум PHP

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

 

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

вид форума:
Линейный форум Структурный форум

тема: file_get_contents
 
 автор: OLi   (30.11.2012 в 01:06)   письмо автору
 
 

Почему содержимое одного сайта заносится file_get_contents() а другого нет?
В чем может быть проблема?

  Ответить  
 
 автор: Sfinks   (30.11.2012 в 01:46)   письмо автору
 
   для: OLi   (30.11.2012 в 01:06)
 

В хозяевах =)
Загрузка через file_get_contents() легко режется, хотя бы элементарной проверкой HTTP_REFERER.
Смотрите в сторону curl.

  Ответить  
 
 автор: OLi   (30.11.2012 в 15:17)   письмо автору
 
   для: Sfinks   (30.11.2012 в 01:46)
 

Пробовал через CURL - такая же реакция

  Ответить  
 
 автор: Mookapek   (30.11.2012 в 16:30)   письмо автору
 
   для: OLi   (30.11.2012 в 15:17)
 

Пользовательского агента сфальсифицировали?

  Ответить  
 
 автор: OLi   (30.11.2012 в 21:24)   письмо автору
 
   для: Mookapek   (30.11.2012 в 16:30)
 

да - указал Chrome
Могли бы вы привести работающий пример для сравнения с тем, что написал я?

  Ответить  
 
 автор: Mookapek   (30.11.2012 в 21:53)   письмо автору
 
   для: OLi   (30.11.2012 в 21:24)
 

<?php
$curl 
curl_init("http://.......");
$useragent "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1";
curl_setopt($curlCURLOPT_USERAGENT$useragent);
curl_exec($curl);
curl_close($curl);
?>

  Ответить  
 
 автор: OLi   (30.11.2012 в 22:01)   письмо автору
 
   для: Mookapek   (30.11.2012 в 21:53)
 

А где будет содержимое страницы хранится?

  Ответить  
 
 автор: Mookapek   (30.11.2012 в 22:09)   письмо автору
 
   для: OLi   (30.11.2012 в 22:01)
 

В предыдущем случае просто выводится в браузер.
Вот вариант с сохранением в переменной.
 <?php
$curl 
curl_init("http://.......");
$useragent "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1";
curl_setopt($curlCURLOPT_RETURNTRANSFER1);
curl_setopt($curlCURLOPT_USERAGENT$useragent);
$content curl_exec($curl);
curl_close($curl);

echo 
$content;
?> 

  Ответить  
 
 автор: OLi   (30.11.2012 в 22:13)   письмо автору
 
   для: Mookapek   (30.11.2012 в 22:09)
 

В общем как и у меня было - ничего не получает по адресу:
http://nefteyugansk.khm.slando.ru/transport/legkovye-avtomobili/

Привел ссылку лишь для теста. Попробуйте пожалуйста

  Ответить  
 
 автор: Mookapek   (30.11.2012 в 22:33)   письмо автору
 
   для: OLi   (30.11.2012 в 22:13)
 

У меня тоже сначала ничего не вывело.
Потом попробовал поставить MSIE 7.0 и заработало!

  Ответить  
 
 автор: OLi   (30.11.2012 в 22:35)   письмо автору
 
   для: Mookapek   (30.11.2012 в 22:33)
 

Странно. Т-е для IE 6 доступ закрыт? ;)

  Ответить  
 
 автор: OLi   (30.11.2012 в 22:37)   письмо автору
 
   для: OLi   (30.11.2012 в 22:35)
 

а у меня опять ничего:


$curl = curl_init("http://nefteyugansk.khm.slando.ru/transport/legkovye-avtomobili/"); 
$useragent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1"; 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($curl, CURLOPT_USERAGENT, $useragent); 
$content = curl_exec($curl); 
curl_close($curl); 

echo $content; 
die();

  Ответить  
 
 автор: Mookapek   (30.11.2012 в 22:39)   письмо автору
 
   для: OLi   (30.11.2012 в 22:37)
 

Вот код, который отлично работает у меня:
<?php

$curl 
curl_init("http://nefteyugansk.khm.slando.ru/transport/legkovye-avtomobili/");
$useragent "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1";
curl_setopt($curlCURLOPT_RETURNTRANSFER1);
curl_setopt($curlCURLOPT_USERAGENT$useragent);
$content curl_exec($curl);
curl_close($curl);

echo 
$content;

?>


Попробуйте другой сайт открыть.
Например, http://www.google.ru

  Ответить  
 
 автор: OLi   (30.11.2012 в 22:43)   письмо автору
 
   для: Mookapek   (30.11.2012 в 22:39)
 

Ответ 200 - но страница пустая :(

  Ответить  
 
 автор: OLi   (30.11.2012 в 23:10)   письмо автору
 
   для: OLi   (30.11.2012 в 22:43)
 

Только этот сайт не принимает..

  Ответить  
 
 автор: OLi   (01.12.2012 в 00:44)   письмо автору
 
   для: Mookapek   (30.11.2012 в 22:39)
 

http://www.google.ru открывает - не открывает только сайт, о котором я писал

  Ответить  
 
 автор: OLi   (01.12.2012 в 21:27)   письмо автору
 
   для: OLi   (01.12.2012 в 00:44)
 

Ребята - вопрос не решается - нетолкните на мысли

  Ответить  
 
 автор: Mookapek   (01.12.2012 в 22:45)   письмо автору
 
   для: OLi   (01.12.2012 в 21:27)
 

Попробуйте проверить на наличие ошибки:
<?php
$curl 
curl_init("http://nefteyugansk.khm.slando.ru/transport/legkovye-avtomobili/");
$useragent "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1";
curl_setopt($curlCURLOPT_RETURNTRANSFER1);
curl_setopt($curlCURLOPT_USERAGENT$useragent);
if(
curl_exec($curl) === false)
{
    echo 
'Ошибка curl: ' curl_error($curl);
    exit();
}
$content curl_exec($curl);
curl_close($curl);

echo 
$content;
?>

  Ответить  
 
 автор: OLi   (02.12.2012 в 02:00)   письмо автору
 
   для: Mookapek   (01.12.2012 в 22:45)
 

Вот что выдало:

Ошибка curl: Failure when receiving data from the peer

  Ответить  
 
 автор: Mookapek   (03.12.2012 в 19:07)   письмо автору
 
   для: OLi   (30.11.2012 в 01:06)
 

Кстати, с этим сайтом у меня отлично работает file_get_contents и без всяких заголовков:
<?php
$file 
file_get_contents("http://nefteyugansk.khm.slando.ru/transport/legkovye-avtomobili/");
echo 
$file;
?>

  Ответить  
 
 автор: OLi   (04.12.2012 в 01:52)   письмо автору
 
   для: Mookapek   (03.12.2012 в 19:07)
 

А у меня не работает..

  Ответить  
 
 автор: Mookapek   (04.12.2012 в 21:28)   письмо автору
 
   для: OLi   (04.12.2012 в 01:52)
 

Попробуйте в начале скрипта поставить это
error_reporting(E_ALL);
Может тогда станет понятна причина.

  Ответить  
Rambler's Top100
вверх

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