[ главная ]   [ рейтинг статей ]   [ справочник радиолюбителя ]   [ новости мира ИТ ]



Ответов: 0
25-02-12 07:01







   Web - программирование
PHP


ASP






XML



CSS

SSI





   Программирование под ОС











   Web - технологии








   Базы Данных









   Графика






Данные




Web - программирование / PHP /

Полоса новостей на php с использованием javascript и слоев

Добрый день!

Решил написать статью о программировании на php на примере экспорта новостей с сайта http://www.gazeta.ru. Но не в том виде, который они предлагают, а по-своему, компактно и интересно. Такой пример вы можете увидеть на страницах сайтов http://www.czar.ru или же http://www.russianjudo.ru. Если вместо новостей пусто или сообщение об ошибке (зависит от настроек сервера), это значит, что сервер gazeta.ru сильно занят и не может обслужить всех желающих получить новости. Можно конечно брать новости и с других серверов, но так как мы рассматриваем реально работающий пример программирования, то будем работать с ним.

Как же создать такую новостную полосу? Все довольно просто. Заходим на сайт и находим пункт "экспорт новостей". http://www.gazeta.ru/explogin.html Там нам предлагают экспортировать на свой сайт новостную полосу с их ресурса. Мы радуемся и регистрируемся. Все абсолютно бесплатно и, главное, стабильно. Например (реальная регистрация, можете зайти и проверить, а также, можете там изменять рубрики, получаемые нами в новостной полосе), ввели имя news_list, пароль qwer мейл - ваш (реально, в этом примере - мой), адрес сайта любой, например - citforum.ru.
Затем понадобится только лишь имя и пароль.
Теперь заходим и смотрим, что же они нам предлагают.
 

С удовольствием отмечаем довольно широкий спектр новостей.

  1. Первая полоса
  2. Полоса политики
  3. Полоса бизнеса
  4. Полоса культуры
  5. Полоса спорта
  6. Автомобильные новости
  7. Бизнес новости
  8. Спортивные новости
  9. Новостная лента
  10. Полоса International
  11. News in English
  12. Полоса общества
  13. Полоса финансов
  14. Полоса автомобилей
  15. Новость часа
  16. Молния

Выбираем интересное и устанавливаем количество новостей в каждой рубрике.

Ниже выбираем кодировку новостей. Она должна совпадать с кодировкой вашего сайта. Например - win1251.

Затем выбираем вид новостей (с датой, с временем и без них). Проще выбрать пустую новость. Хотя программа будет работать в любом случае.

Верх и низ новостей оформлять не нужно.

Получаем строку, которую надо запомнить:
<script language="javascript"
src="http://www.gazeta.ru/cgi-bin/export/
export.cgi?id=2743"></script>

Из нее извлекаем полезное: адрес cgi-скрипта, который и формирует наши новости на gazeta.ru.

Этот адрес:
http://www.gazeta.ru/cgi-bin/export/export.cgi?id=2743

Таким образом, мы имеем страницу, с которой нам надо изъять код ссылок на новости gazeta.ru к себе.

Она имеет приблизительно такой вид:

var news="";
news+="<a
href=\"http://www.gazeta.ru/2001/10/07/
400dnejsborn.shtml\">текст1</a><br>";
news+="<a
href=\"http://www.gazeta.ru/2001/10/08/
last32746.shtml\">текст2</a><br>";
document.write(news);

Нам надо:

  1. найти строки со ссылками
  2. убрать в них \ и лишние ";
  3. добавить еще один <br>
  4. добавить открытие ссылки в новом окне и вызов функции javascript
    (target=_blank onMouseOver=clearTimeout(timeOut)
    onMouseOut=init())

Чтобы получить из всего этого:
<a href="http://www.gazeta.ru/2001/10/07/400dnejsborn.shtml"
onMouseOver=clearTimeout(timeOut)
onMouseOut=init()>текст1</a><br><br>
<a href="http://www.gazeta.ru/2001/10/08/last32746.shtml"
onMouseOver=clearTimeout(timeOut)
onMouseOut=init()>текст2</a><br><br>

Задачи поставлены.

Код программы создания блока новостей.

Вот код программы с комментариями и пояснениями, которая создает массив новостей.

Итак, имеем код программы, которая создает слой, который двигается снизу вверх посредством ява-скрипта.

Ява-скрипт представляет собой программу, протаскивающую блок с новостями в слое с выбираемыми вами размерами и положением. Программа работает и в IE4+ и в NN.

Теперь о ява-скрипте и встраивании в страницу.

Как видим, мы пользуемся слоями. Есть слои, на которых размещен слой с текстом новостей. Последний слой мы прокручиваем снизу вверх. Выставляем скорость движения задержкой движения wait. При поднесении мышки к ссылке, движение прекращается до того, пока мышка не сойдет со ссылки.

А вот как надо описать слои в файле scroll.css, на который стоит ссылка

Прошу не забыть и удалить комментарии в тексте описания слоев. Иначе работать не будет.

А лучше, приведу текст без комментариев (именно его копируйте и редактируйте):

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

<script language="Javascript">init()</script>

Обычно этот вызов ставят в конце страницы или даже по событию onload, но можно делать это и раньше, что вам и советую.

Таким образом, оперируя с координатами слоев, можно выставить нужное его положение, размеры. А выставляя скорость, можно заставить посетителей читать новости с желаемой скоростью.

Вариант, когда новости выводятся на нашем сайте, я опубликую в следующей статье.




Комментарии

 Ваш комментарий к данному материалу будет интересен нам и нашим читателям!



Последние статьи: Web - программирование / PHP /

GTK+: перспективы развития
02-03-2010   

Библиотека GTK+ прошла долгий путь развития и сейчас очень популярна. GNOME, одна из ведущих оконных сред, использует GTK+ почти исключительно, GIMP построен на GTK+, множество коммерческих разработчиков ПО, таких как Abobe, NVidia и VMware, решили использовать эту библиотеку в качестве графической основы для своих продуктов... подробнее

Кол. просмотров: общее - 4331 сегодня - 0

Новостной портал
13-11-2009   

Slashdot.org – популярный новостной портал с посещаемостью 50 млн. человек в месяц. Авторы проекта добились такого успеха, предоставляя пользователям свежие и интересные новости из мира IT... подробнее

Кол. просмотров: общее - 4190 сегодня - 0

Параллельное выполнение скриптов может нарушить целостность информации в файлах
13-11-2009   

Здесь рассматривается вопрос, что бывает, если запустить некий скрипт почти одновременно (что происходит, например, при большой нагруженности сервера) несколько раз, т.е. запустить несколько копий одного и того же скрипта. И к чему это может привести... подробнее

Кол. просмотров: общее - 4036 сегодня - 1

No spam.php
10-11-2009   

...и снова о спаме. Кто о нем только не писал, и все писали, что это плохо и ай-яй-яй. Я не буду оригинальничать, и тоже скажу – это плохо. Это ай-яй-яй. Как бороться со спамерами со своей стороны... подробнее

Кол. просмотров: общее - 4075 сегодня - 0

Начинаем работу с рисунками в php для Windows
10-11-2009   

Эта статья даст вам общее представление о том, как создавать, обрабатывать и выводить рисунки в PHP4 для Windows... подробнее

Кол. просмотров: общее - 4059 сегодня - 1



  WWW.COMPROG.RU - 2009-2012 | Designed and Powered by Zaipov Renat | Projects