[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: открыть сайт для чтения
дианитка
не могу разобраться, почему не работает этот скрипт, помогите, плиз
if(!($fp=fopen("http://www.mail.ru","r")))
exit ("Не могу соединиться");
$file = fread($fp,15000000);
var_dump($file);


результат - выводит string(2207) "



Спустя 8 минут, 54 секунды (25.07.2011 - 14:32) Nikitian написал(а):
А что вы хотите увидеть?
echo$file; выведет содержимое переменной $file

Спустя 5 минут, 49 секунд (25.07.2011 - 14:37) walerus написал(а):
Цитата (Nikitian @ 25.07.2011 - 11:32)
А что вы хотите увидеть?
echo$file; выведет содержимое переменной $file

да результат такой же будет по большому счету..., хотя у меня показывалось и в1м и во 2м случаях, правда только кусок, полностью открыть страницу можно так:



if( !($file = file_get_contents("http://www.mail.ru") ) )
exit ("Не могу соединиться");

var_dump($file);

Спустя 7 минут, 37 секунд (25.07.2011 - 14:45) дианитка написал(а):
а если мне нужна только информация с сайта

Спустя 1 минута, 15 секунд (25.07.2011 - 14:46) дианитка написал(а):
я пыталась повторить вот этот урок
http://www.poiu.ru/lessons/index.php-12.htm

Спустя 3 минуты, 21 секунда (25.07.2011 - 14:50) ADiel написал(а):
Урок отстой.
http://westseo.ru/simple-php-parser этот материал мне кажется лучше

Было бы круто открыть сайт для записи =)

Спустя 1 минута, 57 секунд (25.07.2011 - 14:52) дианитка написал(а):
попробую ваш код.

Спустя 43 секунды (25.07.2011 - 14:52) ADiel написал(а):
Потому что вряд ли сайт mail.ru будет открываться для парсера. попробуй другой сайт

Спустя 3 минуты, 29 секунд (25.07.2011 - 14:56) дианитка написал(а):
хорошо, попробую, спасибо)

Спустя 9 минут, 7 секунд (25.07.2011 - 15:05) walerus написал(а):
Цитата (дианитка @ 25.07.2011 - 11:46)
я пыталась повторить  вот этот урок
http://www.poiu.ru/lessons/index.php-12.htm

Вы как то не досмотрели скорее всего, там написан код такого вида


if (!($fp = fopen("http://someurl.com/", "r") ) exit("Не могу соединиться");
fpassthru($fp);


но не как у Вас

if(!($fp=fopen("http://www.mail.ru","r")))
exit ("Не могу соединиться");
$file = fread($fp,15000000);
var_dump($file);


Если написать так:

if ( !($fp = fopen("http://mail.ru/", "r") )
exit("Не могу соединиться");

fpassthru($fp);


то все показывает, Вы "выдрали" кусок кода из последнего примера, там читается "блоками", и сразу обрабатывается, по этому у Вас и не получилось ничего...

Спустя 7 минут, 23 секунды (25.07.2011 - 15:12) дианитка написал(а):
if (!($fp = fopen("http://someurl.com/", "r") ) exit("Не могу соединиться");fpassthru($fp); 


- там такой код есть но он в самом начале и к дальнейшему скрипту не имеет вроде никакого отношения. а потом в третьем блоке пхп-кода


function show_anecdots($min, $max) {
if ( !($fp = fopen("http://www.umora.ru/", "r")) ) exit("Не могу соединиться");

$file = fread($fp, 1500000);
$file = trim(chop($file));
$file = convert_cyr_string($file, "k", "w");


Спустя 10 минут, 5 секунд (25.07.2011 - 15:22) walerus написал(а):
Я про это и писал, это целая функция, которая цитирую
Цитата
Теперь напишем главную функцию, которая будет читать удаленный документ, обрабатывать его и выводить в соответствии с указанными пожеланиями пользователя.
, то что в первом посте написано Вами, оно работает, выдает "кусок" страницы, ограниченный "15000000" байтами...

У меня var_dump выводит - string(15082)...
Если у Вас была цель получить часть кода, то цель достигнута, если же разобрать на анекдоты и рейтинг как в примере, то Вы не дописали пример до конца...

Спустя 12 минут, 11 секунд (25.07.2011 - 15:35) дианитка написал(а):
ага, тогда вопрос - как получить не часть а весь код

Спустя 30 минут, 24 секунды (25.07.2011 - 16:05) walerus написал(а):
Я же следом написал ))

if( !($file = file_get_contents("http://www.mail.ru") ) )
exit ("Не могу соединиться");

var_dump($file);

Но как по мне, так лучше тогда использовать print_r(); , т.е.

if( !($file = file_get_contents("http://www.mail.ru") ) )
exit ("Не могу соединиться");

// Переменная - $file, содержит то, что получили.
print_r($file); // Выводит содержимое

Спустя 2 минуты, 47 секунд (25.07.2011 - 16:08) walerus написал(а):
Еще обратите внимание на кодировку страницы, т.к. mail.ru - отдает страницу в windows-1251 кодировке и если скрипт написан на UTF-8 ( общепринято ), то на экране будут иероглифы ))), нужно тогда конвертировать данные, через функцию iconv();


$file = iconv('windows-1251', 'utf-8', $file);


вот так.

Спустя 2 часа, 21 минута, 15 секунд (25.07.2011 - 18:29) VELIK505 написал(а):
Цитата (ADiel @ 25.07.2011 - 11:52)
Потому что вряд ли сайт mail.ru будет открываться для парсера. попробуй другой сайт

Ещё как будет просто не таким детским парсером.

Спустя 23 минуты, 20 секунд (25.07.2011 - 18:52) ADiel написал(а):
Я не вдавался в подробности =)

Спустя 6 часов, 13 минут, 2 секунды (26.07.2011 - 01:05) walerus написал(а):
VELIK505
ADiel

Да все открывается обычным file_get_content();... Правда если нужно глубже лезть, то тогда нуно смотреть )), а так, для примера нормально )


_____________
дианка[COLOR=purple]
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.