В данной статье я попытаюсь помочь начинающим программистам создать свой первый проект. Сегодня мы будем писать самый простой и быстрый движок блога.
Начнем с базы данных. Я считаю, что самым оптимальным вариантом будет mysql. Создадим через phpmyadmin новую таблицу со следующими полями: id (уникальный номер статьи), title (заголовок статьи), date (дата добавления статьи), content (текст статьи). Чтобы Вы не теряли время, я собрал sql запрос:
Давайте теперь добавим несколько записей для того, чтобы в дальнейшем мы смогли проверить работоспособность скрипта.
В первой части мы напишем скрипт, который будет выводит главную страницу со свежими статьями и сделаем постраничную навигацию.
Создадим конфигурационный файл, чтобы в будущем Вы всегда смогли изменить настройки блога. Я буду использовать ini файл т.к. такой способ оказался быстрым и удобным. Подробнее о файлах настроек Вы можете прочитать в интересной статье «Самые быстрые настройки для PHP-скриптов». Наш файл будет содержать следующие строки:
#Настройки базы данных
mysql_host = localhost
mysql_user = root
mysql_password = 12345
mysql_database = blog
#Количество статей на страницу
pp = 5
Сохраняем файл и даем ему произвольное название, я назвал просто — config.ini.
Приступаем к написанию главной страницы блога. Сначала нам предстоит собрать html каркас. За одно создадим файл стилей.
style.css
* <
font-family: Arial, Helvetica, sans-serif;
>
/* Блоки */
header <
width:850px;
height:200px;
margin:5px auto;
border-radius:6px;
background:white url(‘i/bg.jpg’) no-repeat top left; /* можете скачать картинку в интернете */
>
article <
width:850px;
height:auto;
margin:auto;
>
article section <
border-bottom:1px dashed #BDECFE;
>
article section h2 <
color:#41738A;
font-size:17pt;
>
article section p <
font-size:10pt;
>
article section p.date <
font-size:9pt;
color:#516168;
text-align:right;
margin-bottom:0px;
padding-bottom:0px;
>
Создадим еще один файл, в котором будет прописано подключение к базе данных, дадим ему имя con.php.
Теперь к индексному файлу подключим con.php и начнем писать запрос к базе данных для выборки свежих новостей.
Как вы уже заметили, мы и тут использовали наш файл настроек.
Теперь займемся выводом полученной информации. В нужном месте шаблона прописываем цикл:
Настало время попробовать сделать постраничную навигацию.
Вверху index.php, после подключения con.php, следует вставить следующие строки для того, чтобы узнать количество статей на сайте и общее количество страниц:
Проверяем, не передавал ли пользователь номер страницы и переделываем наш запрос.
Для проверки данного скрипта, вы можете в файле настроек заменить pp = 5 на pp = 1, чтобы на страницу выводилась только одна статья.
Осталось добавить кнопки навигации. Сразу после тега article пропишем:
И не забудьте добавить стиль для данных ссылок. Давайте сделаем их в виде кнопок:
nav <
width:850px;
height:auto;
margin:10px auto;
text-align:center;
>
nav a <
padding:2px;
background-color:#EFEFEF;
border:1px solid #D5C2C2;
text-decoration:none;
color:black;
font-size:10pt;
margin:2px;
border-radius:5px;
>
Для тех, кто не разобрался в коде главной страницы, выкладываю его сюда:
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.
Да, у этих движков масса плюсов — огромное количество шкурок и плагинов.
Да, у моего скрипта этого нет. Даже наоборот — смена дизайна у блога — дело хлопотливое, т.к. html-разметка не в «шаблонах», а непосредственно с php-кодом.
Зато у моего скрипта есть быстрота и простота работы.
В общем я не буду перечислять характеристики, и отдам необходимую информацию.
Требования скрипта к серверу таковы:
Сервер Apache >= 2
С модулем mod_rewrite. Желательны модули «mod_deflate», «mod_expires» и «mod_headers».
PHP >= 5.2.4 (safe_mode = off (open_basedir = no_value)). Внимание! PHP должен работать как модуль Apache (mod_php), а не как CGI/FastCGI.
GD lib >= 2
MySql >= 5
CRON
Установка:
1. Копируем файлы на сервер.
2. Импортируем дамп, который находится в файле sql_dump.sql в MySQL.
3. Редактируем переменные в начале файла /admin/conf.php под свои настройки.
4. Если ставите скрипт в корень хоста, то строчка «RewriteBase /» в файле .htaccess (57-я) должна остаться без изменений.
А если ставите в папку, например blog, то строчка должна выглядеть так: RewriteBase /blog/
5. Файлы из папки /crontab/ поставьте на CRON на частоту, в зависимости от обновлений и посещаемости блога.
Вход в админ часть блога: http://имя_домена/_a.php
Логин и пароль = admin
Скачивайте, тестируйте, пользуйтесь: Jblog_Blog_Engine_1.0.zip
При возникновении трудностей по установке и работе со скриптом, обращайтесь на форум поддержки: Joker_Forum, в соответствующий раздел.
Этот скрипт php используется для создания блогов, данные которых хранятся в текстовых файлах (без использования СУБД).
Он может создавать сообщения в блогах, которые хранятся в текстовом файле, удаляя все разрывы строк из HTML сообщения блога, так что каждый пост занимает только одну строку в файле.
Скрипт также удаляет опасные теги, которые могут быть использованы для выполнения атак межсайтового скриптинга.
Лицензии: Artistic License; Архив бесплатен для некоммерческого использования.