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

Первый блог на PHP
Метки: / / / /

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

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

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

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

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

  1. id — id статьи;
  2. title — Заголовок статьи;
  3. text — Текст статьи;
  4. id_categories — id темы;
  5. views — просмотры;
  6. date — дата создания статьи;

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

  1. id — id темы;
  2. name — Названия темы;

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

  1. id — id комментария;
  2. comment — Комментарий;
  3. id_article — id статьи которому прикреплён комментарий;
  4. date — Дата комментария;

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

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

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

Таблица статей на PHP

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

Таблица категорий

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

Таблица комментариев

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

Также, если вы плохо знаете как работать с 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 статьи, и точно так же как и в предыдущем получаем по нему её, и поверяем, есть ли у нас что-то, если да, то выводим заголовок и текст.

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

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

Примечание:

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

Шаблоны HTML:

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

index.php:

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

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

topic.php:

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

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

post.php:

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

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

Потом создаём функцию send_comment(), она как раз и будет отправлять комментарии, внутри него создаём SQL запрос для создания комментария в БД, делаем запрос и с помощью JavaScript перемешаем пользователя на эту же страницу, это нужно для того чтобы не добавлялись одни и те же комментарии.

Потом проверяем что нажата кнопка отправить, и если да, то используем функции send_comment().

Вывод:

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

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

Ещё вы можете скачать файлы этого блога.

Подписываетесь на соц-сети:

Оценка:

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд
Количество оценивших: 3
Средняя оценка: 2,33
Загрузка...
Подписаться
Уведомить о
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии