Админ-панель сайта
Админ-панель сайта — это часть движка, предназначенная для автоматического добавления контента на сайт. На ней есть поле, куда Вы пишете текст статьи. Админ панель содержит скрипты, которые создают новые страницы сайта либо добавляют статью в БД, в зависимости от структуры сайта. В меню добавляется ссылка на статью. Обычно админ-панель даёт возможность добавлять не только текст, но и другой контент. Создавая движок сайта, Вы сами решаете, делать админ-панель или добавлять статьи самостоятельно.
Админ-панель располагается на отдельной странице, которая имеет примерно такой адрес:
На сайте не делают ссылки на эту страницу, Вы просто должны знать её URL. Вход в админ-панель производится через форму авторизации. От обычной авторизации она отличается тем, что вы входите не как обычный пользователь, а как администратор, и информация об этом должна быть записана в сессию. Доступ к админ-панели должен быть только у администратора.
Авторизация администратора
Авторизацию администратора можно сделать двумя способами. Если администраторов несколько, то в таблицу с пользователями можно добавить поле, в котором указывать, что пользователь является администратором. А можно в скрипте авторизации просто передавать права администратора конкретному пользователю. Мы используем второй вариант. Назовём страницу авторизации avtadministrator.html. Вот её код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Авторизация:
Форма отправляет данные в файл adminavt.php. Это скрипт авторизации. Его код такой:
Как создать Admin-панель для сайта

В прошлой статье мы с Вами разбирали создание собственного движка для сайта. Однако, очень часто приходится управлять сайтом: добавлять новые материалы, управлять пользователями, голосованиями. Безусловно, это можно делать через PHPMyAdmin, но это весьма неудобно, поэтому хорошим решением будет — создать Admin-панель для сайта. И как это сделать, Вы узнаете в этой статье.
Итак, давайте вновь распишу порядок действий, которые необходимо выполнить:
- Сверстайте все страницы сайта. В принципе, Вы вообще можете обойтись без дизайна, но элементарная структура должна быть. То есть табличные данные должны быть в таблице, а не сплошным текстом.
- Примите решение о том, какие данные Вы хотите видеть в Admin-панели. Например, наверняка Вам потребуется видеть пользователей Вашего сайта, Ваши статьи, может быть, какие-нибудь опросы.
- Создайте класс для управления Admin-панелью. Здесь должны быть созданы методы, которые позволяют делать выборку из самых разных таблиц, а также добавлять и редактировать записи в них. И сделать подобные методы нужно для всех таблиц, с которыми Вы хотите работать в Admin-панели (Вы уже должны были выбрать это в предыдущем пункте). Например, самый простой пример с пользователями. Минимальный набор требуемых методов: выборка всех пользователей, добавление нового пользователя, изменение пользователя. Безусловно, все эти задачи должны быть Вами уже реализованы при создании движка для сайта, поэтому здесь Вам надо будет только обратиться к старым классам и, возможно, как-то изменить данные конкретно для Admin-панели.
- Разбейте Ваш шаблон сайта на отдельные части и скопируйте их в отдельные файлы с расширением tpl. Также поставьте элементы шаблона, например, так: «Пользователь зарегистрировался «. Это всего лишь пример, а данные, вообще говоря, удобнее выводить в таблицах.
- Создайте класс, который будет заниматься подстановкой вместо элементов шаблона соответствующие данные.
- Собирайте по кирпичикам все страницы Admin-панели Вашего сайта с помощью созданного в предыдущем пункте класса.
- При желании можете сделать дизайн, хотя, безусловно, это исключительно для Вас и других администраторов.
Как видите, последние 4 пункта идентичны тем, которые Вы выполняли при создании движка. Здесь объём работы будет значительно меньше, поэтому, думаю, Вы с этим без проблем справитесь.
Я где-то три месяца сидел на своём сайте без Admin-панели, добавляя новые материалы напрямую через базу данных. Скажу честно, тратил много лишнего времени, а когда создал Admin-панель на своём сайте, то процесс управления сайтом значительно упростился. Так что рекомендую Вам сделать то же самое.
Пример создания Admin-панели Вы найдёте в этом обучающем курсе: http://srs.myrusakov.ru/im

![]()
Создано 29.05.2011 13:49:54
Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!
Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.
Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления
Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.
Порекомендуйте эту статью друзьям:
Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):
- Кнопка:
Она выглядит вот так: - Текстовая ссылка:
Она выглядит вот так: Как создать свой сайт - BB-код ссылки для форумов (например, можете поставить её в подписи):
Комментарии ( 15 ):
sivacer 23.02.2012 02:01:27
«Я где-то три месяца сидел на своём сайте без Admin-панели, добавляя новые материалы напрямую через базу данных. Скажу честно, тратил много лишнего времени, а когда создал Admin-панель на своём сайте, то процесс управления сайтом значительно упростился. Так что рекомендую Вам сделать то же самое.» И мне тоже мучить добавляя новые материалы, как это вы сделал «напрямую через базу данных» я сам не знаю? И еще когда вы создал админ-панель на своей сайт? да хочу управления сайт упростился, как это сделать? Я выучил твой видеоуроки html css я сам все понял. Но мне интересую как создать админ-панель самое главное мне удобно добавляя новые материалы. У вас есть этот видеоурок этот? Мне нужно без joomla я знаю это готовый это мне не интересно, мне интересне с нуля.
Admin 23.02.2012 11:24:02
Чтобы создать admin-панель, HTML и CSS недостаточно. Изучайте PHP и MySQL. Когда будете знать на достаточно хорошем уровне, то вопрос сразу же отпадёт.
sivacer 23.02.2012 11:32:08
Михайл Русаков, большое спасибо за совет. Хорошо постараюсь зучай РНР и MySQL.
Gravitator 04.07.2012 02:43:28
Здравствуйте. Для админки я сделал 2 страницы: 1)Страница с формой входа. 2)Сама админка. Так же в скрипте есть функция проверки введённых данных. Если данные введены верно,как направить пользователя на страницу админки? И,если пользователь в строку урл сразу ввёл адрес админки, как направить его на страницу с формой входа? Или подскажите как реализуется доступ в админку.
Admin 04.07.2012 12:53:46
Если пользователь правильно ввёл данные, то делается редирект на админку. Если пользователь просто зашёл в админку, а он не авторизован (не содержит правильных данных в сессии или cookie), то делается редирект на форму авторизации.
Gravitator 05.07.2012 14:17:34
Редирект я делал так: Ничего не получилось, выдаёт ошибку.
Админ-панель («админка») для простого сайта html/css.
Я не очень давно начал учить html и css, и при создании своего первого простейшего сайта столкнулся с проблемой админ-панели. Точнее её отсутствия у меня. Уже успел разочаровать в вордпресе, джулме и прочей х. Под свой стиль их сайты не изменить в коде замучаюсь рыться, хотя админка в общем-то ничего. Помогите пожалуйста ссылками, или своими знаниями в плане готовых админок, но легко встраиваемых, просто для добавления постов и фото. Я конечно учу, но сам напишу её полагаю не скоро.
- Вопрос задан более трёх лет назад
- 5163 просмотра
Комментировать
Решения вопроса 1

готовых админок
Нет такого.
Админка является частью самого сайта, защищенная паролем, и создается она под конкретные требования к администрированию сайта. Либо используется готовая CMS. Одно из двух.
Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать
Как создать админку для сайта на PHP с нуля
Узнайте, для чего нужна панель управления сайтом, какие в ней есть функции и как её разработать самостоятельно.



Евгений Кучерявый
Пишет о программировании, в свободное время создаёт игры. Мечтает открыть свою студию и выпускать ламповые RPG.
Инструменты для управления сайтом:
- phpmyadmin для работы с базой данных;
- FTP-клиент, чтобы загружать или удалять файлы;
- графический редактор, который сжимает изображения;
- текстовый редактор, в котором оформляются статьи;
- сервис аналитики для оценки эффективности контента и рекламы.
Лучше всего собрать их в одном месте, которое и называется панелью управления сайтом.
Как создать админку для сайта на PHP
В первую очередь создадим файл admin.php в корне сайта. Пока у него будет такой вид:
Чтобы ограничить доступ, создадим форму входа в панель управления:

Теперь создадим условия, чтобы пользователь делал что-то полезное. Для этого методом GET передаётся название страницы:
Как вы могли заметить, в таблицах каждая строчка — это ссылка такого вида:
Чтобы создать функцию добавления пользователя (или любого другого элемента на сайте), парсим форму и её обработчик:

Чтобы смотреть статистику посещений, комментирования и другой активности, создаём в базе данных таблицу с полями:
В них записывается общее количество просмотров и комментариев за каждый день, которое выводится на графике. Чтобы это сделать, пропишем HTML-код таблицы:
div class='table'> div class='table-wrapper'> div class='table-title'>Статистика div> div class='table-content'> img src='stats.php' class='statistics-img'> br> Красный: просмотры br> Синий: комментарии br> 1 шаг — 1 день div> div> div>
В качестве источника картинки указывается PHP-файл с кодом:
include("includes/db.php"); $width = 400; $height = 200; $canv = imagecreatetruecolor($width, $height); //Цвета $white = imagecolorallocate($canv, 255, 255, 255); $gray = imagecolorallocate($canv, 150, 150, 150); $black = imagecolorallocate($canv, 0, 0, 0); $red = imagecolorallocate($canv, 255, 0, 0); $blue = imagecolorallocate($canv, 0, 0, 255); imagefill($canv,0,0,$white); //Рисуется квадрат imagerectangle($canv, 15, 5, $width-5, $height-15, $gray); //Горизонтальные линии for($i = 1; $i 5; $i++) < imageline($canv, 15, $height-$i*35, $width-5, $height-$i*35, $gray); > //Вертикальные линии for($i = 1; $i 15; $i++) < imageline($canv, 15+($i*30), 5, 15+($i*30), $height-15, $gray); > //Получение статистики из базы данных $stats_result = mysqli_query($db,"SELECT * FROM statistics"); if($stats_result) < $last_y = [0,0]; $x = 15; //Рисуется график while($stats = mysqli_fetch_array($stats_result)) < imageline($canv, $x, ($height-15)-$last_y[0], $x+30, ($height-15)-($stats['views']/10), $red); imageline($canv, $x, ($height-15)-$last_y[1], $x+30, ($height-15)-($stats['comments']/10), $blue); $last_y[0] = $stats['views']/10; $last_y[1] = $stats['comments']/10; $x += 30; > > else echo mysqli_error($db);> //Вывод изображения header("Content-type: image/png"); imagepng($canv); //Освобождение памяти imagedestroy($canv); ?>
Сначала создаются изображение, рамка и деления. Затем идёт запрос в базу данных, чтобы получить статистику, которая отрисовывается в виде графика. Изображение сохраняется для разового вывода, а потом удаляется. Когда пользователь обратится к статистике в следующий раз, информация будет визуализирована заново.
Дополнительные возможности
То, о чём мы успели поговорить, — лишь часть того, что должно быть в админке.
Например, дополнительно можно реализовать:
- премодерацию комментариев;
- удаление записей из базы данных;
- работу с файлами;
- продвинутый редактор статей;
- подробную статистику каждой отдельной страницы и так далее.
Читайте также:
- Для чего используют PHP и почему его ненавидят
- Жучки и печеньки: краткая история IT-терминов
- Как начать программировать на PHP