Виртуальный Брест
Главная Портал Форум Рассылки Контакт Для клиентов Статьи

Геологические работы
Геологические работы
 
Экскурсии в Европу, из Бреста!
Экскурсии в Европу, из Бреста!
 
Баня открыта и ждет посетителей!
Баня открыта и ждет посетителей!
 

Виртуальный хостинг - дом для вашего сайта - лучшее предложение в Бресте!


Полный список глав книги

Архив новостей


Если на Вашем сайте посетители могут подписаться не рассылку, совсем не лишним будет организовать сервис архива рассылок. Конечно, это не стоит делать, например, с рассылкой прайса фирмы, но вот новости или новинки совсем другое дело. Этим мы убиваем сразу двух зайцев – во первых, позволяем посетителям просматривать неполученные ранее или просто пропущенные и удаленные рассылки без обращения к администратору и, что на мой взгляд не менее важно, гарантируем наращивание информации на сайте для поисковых систем, которые стали умные нынче, и индексируют не иначе как только полезную информацию, коей и является, собственно, хорошая рассылка новинок.

Самое главное, что нам понадобится – это собственно сам архив рассылок. Все остальное мы уже сделаем легким движением руки. Прим как всегда. Для начала стоит выделить под это дело отдельный каталог (да не жадничайте, не жадничайте!), и определиться с форматом хранимых рассылок. Если брать по максимуму, то нам понадобится на каждую рассылку хранить три файла – обычный HTML с собственно рассылкой, ZIP для любителей закачать и потом читать в OFF-LINE и, наконец, текстовый файл с кратким содержанием или оглавлением рассылки. Ну, должен же человек представлять себе, что и зачем он скачивает или смотрит. Причем файлы HTML и ZIP рекомендую хранить еще в разных подкаталогах. Это нужно для увеличения быстродействия всей системы в целом, так как осуществлять поиск мы будем по файлам, и лишние в этом каталоге нам просто ни к чему.

Итак, давайте посмотрим, что у нас получается. Для программы нам понадобится всего один файл. Обзовите его так, как Вам нравится, это не принципиально, и сделайте ссылку на нега на своем сайте «Архив рассылок». Теперь откройте сам файл в текстовом редакторе, и можно начинать программировать.

$katalog_archiv = "archiv/";

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

$name_temp = "Archiv_News!_";

Начальное имя у всех файлов. Может быть абсолютно любым, оно отбрасывается в процессе работы, но должно совпадать с реальными именами в каталоге с архивом рассылок. Я, для удобства, принял для себя такой формат имен:

Начальное имя_число_месяц_год выпуска рассылки

И этого формата надо придерживаться для всех трех компонентов рассылки – файлов HTML, ZIP и TXT.

$dir_archiv = opendir($katalog_archiv);

while($f = readdir($dir_archiv))

   {

Открываем наш каталог с рассылками и начинаем по нему проходиться, перебирая все файлы и директории в поиске тех, что имеют расширение TXT. Вот почему я рекомендовал не хранить тут остальные файлы, так как перебор усложняется, если файлов становится слишком много.

$f1 = trim(str_replace (".","~", $f));

@list ($id_name, $id_ras) = split ("~", $f1);

Но прежде, чем мы сможем найти текстовый файл, разделим очередное имя на две составляющих – собственно имя и его расширение. Это нам понадобится в дальнейшем.

if ($id_ras == "txt")

// --- блок вывода сообщения об очередной дате новинки ---

{

И вот, наконец, найден текстовый файл, можно начать вывод сообщения, так как это просто очередная новинка, которую нужно вывести на экран. Текстовые файлы представляют из себя обычные HTML-файлы, просто у них расширение такое, а внутри структура может быть любая. Этот файл будет целиком выведен на экран, что дает нам большую гибкость в выводе анонса новости.

$f2 = trim(str_replace ($name_temp,"", $f));

$f2 = trim(str_replace (".txt","", $f2));

$f1 = trim(str_replace ("_","~", $f2));

@list ($den, $m, $god) = split ("~", $f1);

$q[]="";

$q[]="января";

$q[]="февраля";

$q[]="марта";

$q[]="апреля";

$q[]="мая";

$q[]="июня";

$q[]="июля";

$q[]="августа";

$q[]="сентября";

$q[]="октября";

$q[]="ноября";

$q[]="декабря";

if ($m=="01") $m=1;

if ($m=="02") $m=2;

if ($m=="03") $m=3;

if ($m=="04") $m=4;

if ($m=="05") $m=5;

if ($m=="06") $m=6;

if ($m=="07") $m=7;

if ($m=="08") $m=8;

if ($m=="09") $m=9;

$m = $q[$m];

Расчленяем имя файла таким образом, что бы выделить из него еще и дату рассылки. Нам не надо хранить ее отдельно, так как она присутствует в самом имени файла. Алгоритм немного грубый, но тут Вы сможете проявить свою фантазию и придумать что-то свое, более простое и изящное. Я взял код, который написал еще тогда, когда только начинал программировать. Руки чесались переписать попроще, но не стал – нечего все разжевывать.

echo "<p><b>Рассылка от $den $m 20$god года: </b><br>

Содержание:<br><br>";

Вывели сообщение на экран о рассылке и ее дате выхода.

include ("$katalog_archiv$name_temp$f2.txt");

И вложили то, что лежит в текстовом файле. Несмотря на расширение, код в нем будет выполнен, но только HTML. Осталось вывести ссылки для просмотра и скачивания нашей рассылки. Что мы и делаем:

echo "<br><br><a href=$katalog_archiv$name_temp$f2.html> посмотреть</a> - <a href=$katalog_archiv$name_temp$f2.zip> скачать</a></p>";

И конечно – не забудьте завершить цикл, в котором перебираются файлы:

} }

Вот и все, как видите, тоже совсем несложно. Обратите внимание, я оставил файлы HTML и ZIP в одном каталоге с файлами TXT, хотя сам же намекал, что стоит их разнести для ускорения работы. Это я сделал сознательно для того, что бы Вы сами продумали этот вопрос и потренировались на этом примере.

Читать еще...



К. Шмитт, К. Симпсон

HTML5. Рецепты программирования
Эта книга, представляющая собой сборник рецептов и готовых решений, позволит вам получить практический опыт работы с основными элементами HTML5. Издание охватывает...

Луис Розенфельд, Питер Морвиль

Информационная архитектура в Интернете
Третье издание знаменитой книги Питера Морвиля и Луиса Розенфельда "Информационная архитектура в Интернете" станет незаменимым источником информации для всех, чья деятельность...

Линн Бейли, М. Моррисон

Изучаем PHP и MySQL
Вы хотите уметь создавать не только статичные, но и динамичные, связанные с базами данных сайты? Тогда вам не обойтись без знания РНР и MySQL. Эта книга является уникальным...

Денис Колисниченко

Joomla 2.5. Руководство пользователя
Эта книга - простое и эффективное учебное пособие по освоению и использованию системы управления контентом веб-сайта Joomla 2.5. Система очень популярна в Сети, поскольку обладает...

    Информация

Главная - переход на начало
Тарифы на Российский хостинг
Правила - что можно а что нет
Заказ - сделайте это сейчас
Выбор домена - найди свое имя
Регистрация домена - купить
Оплата - варианты для всех
Панель управления Россия
Панель управления Беларусь
Вопросы и ответы - информация
Разработка сайтов - сопровождение
Виртуальный Брест - портал
Контакт - обратная связь
Наш форум - пообщаемся?

Список доменов
в которых доступна бесплатная регистрация имен при покупке хостинга, а так же открытие поч- тового ящика:

Новости Бреста:

Второй порыв теплосетей в Бресте - двенадцать многоэтажных домов и один детский сад остались без тепла
Почти тонну мёда задержали налоговики при проверке в Бресте
Зарплата в конвертах в Бресте - видео
Трое жителей Кавказа в "поисках работы" забрались прямо в лес в пограничную зону
Профилактика квартирных краж - важно
Современный животноводческий комплекс на 1500 голов строится в СПК "Королевский" Кобринского района - фото
Результаты проходящей на территории Брестской области акции "Не упусти свой шанс"
Осенний месячник по наведению порядка на земле проходит на Брестчине - важно
В Лунинецком районе в водоеме нашли автомобиль с телом внутри
ГАИ: брестчанин решил стать маршрутчиком и в пьяном состоянии вез горожан

© Виртуальный Брест 2001 - 2009 Автор проекта: Андрей Кухарчик Дизайн: Partgraphic