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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Проблема(Не работает) с выводом переменной htmlspecialchars(file_get_contents("")

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
Array
Отправлено: 11 Марта, 2012 - 14:02:49
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Март 2012  


Помог: 0 раз(а)




Всем привет!Вообщем мне нужно, чтобы через парсер находилось значение (в данном случае - ссылка) и вставлялось в переменную $str[0].
Но вот сообственно, что я сделал.
PHP:
скопировать код в буфер обмена
  1. $res = '<link rel="shortcut icon" href="http://yandex.st/lego/_/pDu9OWAQKB0s2J9IojKpiS_Eho.ico">';
  2. $str = explode('<link rel="shortcut icon" href="',$res);
  3. $res = $str[1];
  4. $str = explode('">',$res);
  5.  
  6. echo '<img src="'.$str[0].'">';


Так вот, у меня не получается сделать это через парсер.

Помогите пожалуйста, заранее спасибо..думаю понятно о чём идёт речьУлыбка
 
 Top
OrmaJever Модератор
Отправлено: 11 Марта, 2012 - 14:04:38
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Array пишет:
у меня не получается сделать это через парсер.

Array пишет:
думаю понятно о чём идёт речь

Абсолютно... Может поподробнее? Однако


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Array
Отправлено: 11 Марта, 2012 - 14:09:32
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Март 2012  


Помог: 0 раз(а)




OrmaJever пишет:
Array пишет:
у меня не получается сделать это через парсер.

Array пишет:
думаю понятно о чём идёт речь

Абсолютно... Может поподробнее? Однако


Ну вообщем эта функция сканирут файл и выводет её html код:


Надо чтобы explode её обрабатывал:
PHP:
скопировать код в буфер обмена
  1. $res = htmlspecialchars(file_get_contents("http://yandex.ru"));
  2. $str = explode('<link rel="shortcut icon" href="',$res);
  3. $res = $str[1];
  4. $str = explode('">',$res);
  5.  
  6. echo '<img src="'.$str[0].'">';
 
 Top
OrmaJever Модератор
Отправлено: 11 Марта, 2012 - 14:29:47
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Array пишет:
Ну вообщем эта функция сканирут файл и выводет её html код:

Ну не совсем сканирует, но направление мылси правельное, а главное слово в предложении "файл". Где вы тут видите файл? "http://yandex.ru" - это url и обращатся к нему надо через curl.
Array пишет:
Надо чтобы explode её обрабатывал:

И что в итоге? Выводит ошибки или просто гдето неожиданый результат? [url]phpfaq.ru/debug[/url]


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Array
Отправлено: 11 Марта, 2012 - 14:33:34
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Март 2012  


Помог: 0 раз(а)




OrmaJever пишет:
Array пишет:
Ну вообщем эта функция сканирут файл и выводет её html код:

Ну не совсем сканирует, но направление мылси правельное, а главное слово в предложении "файл". Где вы тут видите файл? "http://yandex.ru" - это url и обращатся к нему надо через curl.
Array пишет:
Надо чтобы explode её обрабатывал:

И что в итоге? Выводит ошибки или просто гдето неожиданый результат? [url]phpfaq.ru/debug[/url]

Ну да, не файл, я ошибся, с другого сайта нужно, чтобы сылку парсил..Нет ошибки не выводит, пустую строку, print_r($str) - выводит html дамп..я просто с этими фунциями первый раз работаю, поэтому плохо понимаю, что к чему!

(Отредактировано автором: 11 Марта, 2012 - 14:34:09)

 
 Top
Зверь
Отправлено: 11 Марта, 2012 - 15:01:16
Post Id



Частый гость


Покинул форум
Сообщений всего: 243
Дата рег-ции: Окт. 2011  


Помог: 7 раз(а)




htmlspecialchars заменяет спец. символы на их сущности и в $res попадает уже измененный текст, а в explode вы разбиваете как раз по html тегам. в общем уберите htmlspecialchrs
 
 Top
Array
Отправлено: 11 Марта, 2012 - 15:13:02
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Март 2012  


Помог: 0 раз(а)




Зверь пишет:
htmlspecialchars заменяет спец. символы на их сущности и в $res попадает уже измененный текст, а в explode вы разбиваете как раз по html тегам. в общем уберите htmlspecialchrs


Дело в том, что без этой функции, выводится сама страница..вот почему сделано данное преобразование
 
 Top
Зверь
Отправлено: 11 Марта, 2012 - 15:24:54
Post Id



Частый гость


Покинул форум
Сообщений всего: 243
Дата рег-ции: Окт. 2011  


Помог: 7 раз(а)




Тогда делай так, что ли

PHP:
скопировать код в буфер обмена
  1. $res = htmlspecialchars(file_get_contents("http://yandex.ru"));
  2. $str = explode(htmlspecialchars('<link rel="shortcut icon" href="'),$res);
  3. $res = $str[1];
  4. $str = explode('">',$res);
  5.  
  6. echo '<img src="'.$str[0].'">';
 
 Top
Array
Отправлено: 11 Марта, 2012 - 15:47:00
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Март 2012  


Помог: 0 раз(а)




Зверь пишет:
Тогда делай так, что ли

PHP:
скопировать код в буфер обмена
  1. $res = htmlspecialchars(file_get_contents("http://yandex.ru"));
  2. $str = explode(htmlspecialchars('<link rel="shortcut icon" href="'),$res);
  3. $res = $str[1];
  4. $str = explode('">',$res);
  5.  
  6. echo '<img src="'.$str[0].'">';


Не помоглоНедовольство, огорчение
 
 Top
Зверь
Отправлено: 11 Марта, 2012 - 15:58:04
Post Id



Частый гость


Покинул форум
Сообщений всего: 243
Дата рег-ции: Окт. 2011  


Помог: 7 раз(а)




Вообще для таких целей используют регулярные выражения http://www.php.net/manual/ru/fun...n.preg-match.php
При помощи регулярки получить то что тебе нужно - дело одной минуты.
 
 Top
Array
Отправлено: 11 Марта, 2012 - 16:08:58
Post Id


Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Март 2012  


Помог: 0 раз(а)




Зверь пишет:
Вообще для таких целей используют регулярные выражения http://www.php.net/manual/ru/fun...n.preg-match.php
При помощи регулярки получить то что тебе нужно - дело одной минуты.



Спасибо, буду разбираться..
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


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



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB