Как сделать блог на php

Пишем движок блога: часть первая

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

Начнем с базы данных. Я считаю, что самым оптимальным вариантом будет 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;
>

Для тех, кто не разобрался в коде главной страницы, выкладываю его сюда:

Источник

Создание PHP+MySQL сайта: от простого к сложному — шаг первый

Для создания перспективного, расширяемого и эффективного сайта любой сложности следует начинать с простого. Это процесс нелёгкий, требует определённых базовых знаний PHP и MySQL, но если его рассмотреть по пунктам — то можно составить своего рода «рабочий план», который пригодится при создании новых сайтов. Подготовим «ядро» и базу для проекта. Вначале это будет обычный сайт визитка, но потом, добавляя функционал, его можна превратить во что угодно. Итак, приступим.

1. Подготовка базы данных. Создаём первую таблицу в БД MySQL

Создаём новую базу данных, например «mysite». Лично я привык работать с кодировкой UTF-8, по-этому сразу оговорюсь: проследите, чтобы все текстовые файлы сайта, сама база, таблицы и поля таблиц были в одной кодировке.
В новой базе делаем таблицу. Назовём её «pages». В этой таблице будут храниться статические страницы будущего сайта и информация о них. Таблица должна содержать следующие поля:

Сразу после создания таблицы вставляем в неё значения для главной страницы сайта. В поле «page_alias» для главной страницы предлагаю вставить значение «home». Метатеги — соответственно тематике всего сайта. Таким же образом можно посоздавать другие страницы, например «О компании» с алиасом «about» и своими метатегами, или «Контакты» с алиасом «contacts» и т.д.

2. Создаём файл конфигурации сайта

function close() <
mysql_close($this->link);
>

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

Если Вы работаете в среде Windows, я могу порекоммендовать использовать редактор Notepad++. В этом редакторе есть нумерация строк, и он легко переводит текст из одной кодировки в другую. ВНИМАНИЕ! Если Вы работаете в кодировке UTF-8 — конвертируйте файлы в UTF-8 without BOM — это поможет избежать проблем в будущем.

3. Создаём index.php — главный контроллер сайта

Файл конфигурации создан. Теперь в корневой папке сайта создаём index.php — это и будет основной скрипт сайта, своего рода «главный контроллер». Содержание файла index.php:

// ГЛАВНЫЙ КОНТРОЛЛЕР
switch ($_GET[option]) <
case «page»:
include($_SERVER[DOCUMENT_ROOT].»/com/page.php»);
break;
default:
include($_SERVER[DOCUMENT_ROOT].»/com/home.php»);
break;
>

include ($_SERVER[DOCUMENT_ROOT].»/template.php»);
$db->close();

4. Создаём компонент вывода обычной страницы

Создаём в папке «com» файл «page.php». Содержимое файла следущее:

5. Создаём компонент вывода главной страницы

Главная страница у нас в базе данных хранится под псевдонимом «home», и пока по своей структуре не отличается от обычных страниц сайта — это просто статья. Тем не менее создадим для неё отдельный компонент — на перспективу, так сказать.

Содержимое компонента «home.php» в папке «com» почти совпадает с содержимым компонента обычной страницы, за исключением строки запроса к базе и названия компонента. Строка запроса теперь выглядит так:

$query = «SELECT * FROM wx_pages WHERE page_alias=’home’ LIMIT 1»;

6. Создаём шаблон дизайна всего сайта

В корневой папке также должны быть папки «css» и «images» для элементов дизайна. В файле /css/style.css — можно настроить стили по своему усмотрению.

RewriteEngine On
RewriteBase /

Источник

Пишем блог на PHP

Вначале разберемся, что это за тип сайта – блог. Это такой сайт, где размещается текстовая, графическая или видеоинформация. Обязательная особенность – это возможность комментирования всей размещенной информации.

Если вы решили написать блог на PHP, выясним, какие знания будут необходимы. А если вы уже точно знаете для чего вам блог, то можете просто переходить к продвинутому курсу ООП в PHP, в рамках которого вы самостоятельно напишите свой блоговый движок на PHP и будете готовы к трудоустройству в хорошие компании.

Этапы создания блога

Движок блога на PHP

Движок или CMS – это набор некоторых функций, которые нужны для управления сайтом. Можно весь сайт написать с нуля, но можно значительно упростить задачу, если воспользоваться готовыми CMS.

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

Если вы принципиально решили писать блог на PHP самостоятельно, тогда рекомендуется разобраться в паттернах, т.е. шаблонах проектирования, чтобы не «изобретать велосипеды», ведь многие типичные проблемы решены и представлены в готовом виде. Рекомендуется посмотреть MVC и Singleton. Все это изучается в продвинутом курсе PHP.

Скрипт блога на PHP

Но есть еще один способ написать блог на PHP – это использовать скрипты. Скрипт – это некоторый программный код, который выполняет определенные функции. Зачастую, копаться в коде скрипта не нужно, достаточно выполнить инструкцию по установке и ввести требуемые данные. Причем скрипт может стать как основой вашего сайта, так и расширить уже существующий функционал.

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

Заключение

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

Источник

Первый блог на PHP для начинающих

Как сделать блог на php. Смотреть фото Как сделать блог на php. Смотреть картинку Как сделать блог на php. Картинка про Как сделать блог на php. Фото Как сделать блог на php

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

Также перед этим посмотрите наш учебник по PHP.

Создаём базу данных для блога:

В качестве базы данных мы используем MySQL, тут не будет показываться как сделать БД и таблицы в ней, просто покажу структуру.

Таблица articles (Статьи):

Таблица categories (Категории):

Таблица comments (Комментарии):

Как видите БД получилась не большая.

Что касается её настроек, тут всё просто, вам не чего делать особо даже не надо, вот скриншоты с настройками.

Таблица articles (Статьи):

Как сделать блог на php. Смотреть фото Как сделать блог на php. Смотреть картинку Как сделать блог на php. Картинка про Как сделать блог на php. Фото Как сделать блог на php

Таблица categories (Категории):

Как сделать блог на php. Смотреть фото Как сделать блог на php. Смотреть картинку Как сделать блог на php. Картинка про Как сделать блог на php. Фото Как сделать блог на php

Таблица comments (Комментарии):

Как сделать блог на php. Смотреть фото Как сделать блог на php. Смотреть картинку Как сделать блог на php. Картинка про Как сделать блог на php. Фото Как сделать блог на php

На этом настройка БД закончилась.

Также, если вы плохо знаете как работать с PhpMyAdmin, то прочитаете часть учебника: Работа с PhpMyAdmin.

Структура файлов блога:

Так как в статье показывается как сделать первый сайт, то структура будет очень простая, вот:

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

Как работает блог:

Пришло время рассказать как будет работать программа, суть работы в том, что вы будите заходить на страницу, например статьи, и специальный генератор, будет брать из БД данные страницы и выводить их.

А в ссылки к статьям будут отсылаться к шаблону с GET параметрам с идентификатором этой статье.

Если вы не знаете как работает форма и что такое GET и POST запросы то зайдите сюда.

Генераторы:

Теперь самое главное, это то какие генераторы у нас будут, чтобы блог на PHP нормально работал, но сначала разберём файл с подключением к БД.

mysqlConnect.php:

Это файл подключает нас базы данных.

Тут всё достаточно просто, первые переменную это адрес сервера, имя пользователя, пароль и название БД, потом подключаем класс mysqli и проверяем, что всё правильно подключилось.

generation.php:

Файл generation.php нужен для генерации HTML элементов, точнее именно в этом фале будут браться данные из БД и выводится на страницу.

Каждый генератор не большая функция, которая берёт из БД данные и выводит что нужно, мы разберём каждую по отдельности.

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

То есть, здесь мы берём в SQL запросе все категории которые есть в БД, и кладём их в качестве списка в меню.

В ссылке используется путь до HTML шаблона категории с GET запросом который передают id категории.

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

Тут уже строим SQL запрос для получения всех статей, которые есть на сайте, отправляем запрос, проверяем есть ли строки в БД, если да, то выводим их все через цикл, если нет, то пишем надпись «Нет статей».

При выводе статей в качестве ссылке на неё используем путь до шаблона с GET запросом который передают id статьи.

Следующий генератор для вывода статей в определённой категории.

Это точно такая же функция что и для главной страницы, единственное один из параметров это id категории и статьи получаем по её id которой принадлежат.

Теперь перейдём к генераторам для статей.

Тут в качестве параметра предаём id статьи, и точно так же как и в предыдущем получаем по нему её, и поверяем, есть ли у нас что-то, если да, то выводим заголовок и текст.

Последний генератор, это вывод комментариев, вот он.

Здесь подобный код, как и в случаи с генератором статей, только берём мы комментарии по идентификатору статьи.

Примечание:

Шаблоны HTML:

Последние что стоит разобрать, так это как будут устроены страницы блога на PHP.

index.php:

Это у нас файл для главной страницы, в нём будем использовать генератор меню и вывода всех статей.

Единственное что можно отметить, это то, что мы подключаем файл с генераторами.

topic.php:

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

Тут только одно существенное отличие от предыдущего файла, мы кладём идентификатор темы, который передаются через GET запрос, в переменную и передаём его в качестве параметра в генератор.

post.php:

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

Вывод:

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

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

Источник

Пример MVC в php. Четвертая статья. Проектируем блог

Содержание цикла статей:

Введение

В трех предыдущих статьях мы написали минимальный каркас MVC проекта. Хочу обратить внимание, что наша основа еще «сырая», она не испытывалась в «полевых условиях», но это мы скоро исправим. Возможно в процессе создания блога, мы что-то будем подправлять, и дописывать в ядро. Начиная с этой статьи, мы приступим к уже практическому применению всего того, что изучали в первых трех статьях. В этой статье мы спроектируем блог и начнем его реализацию.

Проектируем базу данных

Прежде чем приступить к разработке блога, нужно спроектировать базу данных, но еще раньше нужно определиться, что у нас вообще должно получиться. Давайте для начала создадим не большой, в плане функционала, блог, который будет иметь категории статей, статьи и будет возможность писать комментарии к статьям. Возможно, потом расширим возможности, но пока для того, чтобы лучше понять MVC нам и этого хватит.
Итак, приступим к созданию бд, нам потребуется три таблицы – для категорий, для статей и для комментариев. На картинке можете посмотреть структуру таблиц:
Как сделать блог на php. Смотреть фото Как сделать блог на php. Смотреть картинку Как сделать блог на php. Картинка про Как сделать блог на php. Фото Как сделать блог на php
А также создать бд можете, воспользовавшись sql-патчем:

Проектируем структуру блога

Разработка функционала

Теперь приступим к самой интересной части – разработке функционала, начнем с главной страницы – контроллер index, экшен index, тут мы ни чего делать не будем, а просто выведем текст, то есть просто будем подключать нужную вьюху:

Давайте создадим контроллер, который будет отвечать за вывод всех статей для определенный категории — Controller_Category. Мы будем передавать в него ID категории и делать по нему запрос:

Во вьюхе для этого контроллера и экшена сделаем вывод заголовков, короткого описания и ссылки на полный текст статьи.
И наконец, в последнем контроллере(Controller_Article) реализуем получение конкретной статьи по ее ID:

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

Помимо написания сайта полностью с нуля, есть возможность создать сайт совместных покупок используя отлаженную и проверенную CMS.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *