|
Автор |
Сообщение |
Akito
Зарегистрирован: 20.03.2009 Сообщения: 7
|
|
|
|
Вопрос опять по книге Движок для вашего сайта.
После всех указанных манипуляций в книге на выходе мы имеем то что изображено на рис 16.3(т.е. новость в новом белом окне) Можно поподробнее узнать как вставить этот результата в дизайн сайта как на рис 16.5
PS:если есть мысли по поводу прошлой темы с авторизацией тоже буду рад услышать. |
|
Вернуться к началу |
|
|
den
Старожил
Зарегистрирован: 31.01.2006 Сообщения: 13870 Откуда: Кировоград, Украина
|
|
|
|
Хотя бы так:
$news = join('',file('http://server/news')); // код совместим с ПХП 4 и 5
Потом $news выводим в нужном месте или присваиваем переменной TPL-шаблона |
|
Вернуться к началу |
dhsilabs@jabber.ru |
|
|
Akito
Зарегистрирован: 20.03.2009 Сообщения: 7
|
|
|
|
так а зачем мне видеть новости на всех страницах?(в случае с tpl шаблоном)
Вызывается нюьс через этот код
elseif($p=="lenta") {
$page = join('',file("http://localhost/dip.work.ru/import.php"));
$page = str_replace('http://',
'http://localhost/dip.work.ru/news.php?page=nn&u=http://', $page);
}
Но в этом слчае как я и говорил подробности новостей идут в белом окне. А ссылка имеет вид
http://localhost/dip.work.ru/news.php?u=http://itnews.com.ua/47663.html
На рис 16.5 мы видим другую ссылку
http://localhost/dip.work.ru/index.php?page=nn&u=http://itnews.com.ua/47663.html
Но если мы делаем такую же ссылку у себя, то нас просто выкидывает на главную страницу(хотя ссылка в адресной строке правильная).
Думаю я что то не допонимаю, посижу еще подумаю малость |
|
Вернуться к началу |
|
|
Tuxik
Тяпницо
Зарегистрирован: 02.07.2007 Сообщения: 1521
|
|
|
|
Akito, может это и покажется странным, но у меня нет доступа к твоему компьютеру, я не могу перейти по предложенной тобою ссылке. |
|
Вернуться к началу |
|
|
Akito
Зарегистрирован: 20.03.2009 Сообщения: 7
|
|
|
|
А я как бы это и не предлагал. Я просто показывал какой вид имеет полученная ссылка.
Работаю чисто по книге Движок для вашего сайта. Так что писать листинг файлов news.php и index.php не вижу смысла
(отсылка на некии рисунки тоже по книге) |
|
Вернуться к началу |
|
|
Akito
Зарегистрирован: 20.03.2009 Сообщения: 7
|
|
|
|
Поюзал поиск Нашел темку про RSS но там проблема была новость вообще не отображалась. Для примера там дают ссылку на свою ленту
http://dkws.org.ua/index.php?page=lenta
так в этой рсс если кликнуть по подоробностям новости кидает на главную страницу, а не на новость хотя вид ссылки правильный
http://dkws.org.ua/index.php?page=nn&u=http://itnews.com.ua/47681.html
Такая же проблема у меня возникла при работе с галереее(livejournal, ну вообщем тоже все по книге делал) обложка галерееи появляется с первой картинкой, а если кликнуть на нее(поидеии должно отобразится содержимое галерееи) кидает на главную страницу.
Ну вообщем эту проблему хотел тоже обсудить ну чувствую опять разговариваю в одни ворота |
|
Вернуться к началу |
|
|
lockout
Зарегистрирован: 17.09.2009 Сообщения: 4 Откуда: г. Ульяновск
|
|
|
|
Вопрос по книге PHP 5?6 и MySQL 6. Разработка Web-приложений.
гл.29.5. Исходник из all.rar->ch29.rar
Указанный код - news.php - при вызове в разных браузерах строкой http://gaw1/mynews/src/news.php?u=http://itnews.com.ua/30519.html на локальном хосте вместо ожидаемого выдает следующее:
========
Warning: file() [function.file]: php_network_getaddresses: getaddrinfo failed: Этот хост неизвестен. in G:\accounts\MySite\MyNews\src\news.php on line 5
Warning: file(http://itnews.com.ua/30519.html) [function.file]: failed to open stream: No error in G:\accounts\MySite\MyNews\src\news.php on line 5
Warning: join() [function.join]: Bad arguments. in G:\accounts\MySite\MyNews\src\news.php on line 5
========
Строка 5 это $f=join('<BR>', file($u));
Не подскажете-ли в чем дело? Настройки хоста?
Дополнительно сообщу, что выход собственно в Инет происходит через прокси-сервер (UserGate). Может он что-либо режет? |
|
Вернуться к началу |
|
|
den
Старожил
Зарегистрирован: 31.01.2006 Сообщения: 13870 Откуда: Кировоград, Украина
|
|
|
|
Вот именно - настройки хоста, возможно брандмауэр режет попытки Апача достучаться до Интернета - функция file() не может получить удаленный файл, в данном случае http://itnews.com.ua/30519.html |
|
Вернуться к началу |
dhsilabs@jabber.ru |
|
|
lockout
Зарегистрирован: 17.09.2009 Сообщения: 4 Откуда: г. Ульяновск
|
|
|
|
Если кому-нибудь интересно, то для работы через прокси необходимо заменить в lastRSS.php строку кода $f = @fopen($rss_url, 'r') на следующие (с соответствующей корректировкой оператора if):
============
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$rss_url);
curl_setopt ($ch , CURLOPT_RETURNTRANSFER,1 );
curl_setopt ($ch, CURLOPT_HEADER,0 );
curl_setopt($ch, CURLOPT_PROXYPORT,8080);
curl_setopt($ch, CURLOPT_PROXYUSERPWD,'user:pasword');
curl_setopt($ch, CURLOPT_PROXY,'192.168.0.XXX');
curl_setopt($ch, CURLOPT_REFERER,'yandex.ru');
curl_setopt($ch, CURLOPT_USERAGENT,'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 1.1.4322)');
============
Строки кода
$rss_content = '';
while (!feof($f)) {
$rss_content .= fgets($f, 4096);
}
fclose($f);
на следующие:
============
$rss_content = curl_exec($ch);
curl_close($ch);
============
Далее по тексту.
В граббере news.php строку $f=join('<BR>', file($u)); заменить на:
============
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$u);
curl_setopt ($ch , CURLOPT_RETURNTRANSFER,1 );
curl_setopt ($ch, CURLOPT_HEADER,0 );
curl_setopt($ch, CURLOPT_PROXYPORT,8080);
curl_setopt($ch, CURLOPT_PROXYUSERPWD,'user:password');
curl_setopt($ch, CURLOPT_PROXY,'192.168.0.XXX');
curl_setopt($ch, CURLOPT_REFERER,'yandex.ru');
curl_setopt($ch, CURLOPT_USERAGENT,'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 1.1.4322)');
$data = curl_exec($ch);
curl_close($ch);
$f=$data;
========
Далее по тексту.
В PHP должна быть активизирована библиотека CURL.
Другой вариант - использовать сокеты. |
|
Вернуться к началу |
|
|
den
Старожил
Зарегистрирован: 31.01.2006 Сообщения: 13870 Откуда: Кировоград, Украина
|
|
|
|
lockout, интересное, спасибо |
|
Вернуться к началу |
dhsilabs@jabber.ru |
|
|
|
|