Июн 26, 2021 - Уроки php    No Comments

§5. PHP и MySQL - создаем админку

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

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

Админка на фрейме

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

Админка для сайта

Админка для сайта

 

Файлы исходники можно скачать здесь

Самое интересное здесь, пожалуй, это то, что нельзя помещать на страницу файл admin_logout.php с функцией прекращения сессии session_destroy();  так как при загрузке файла admin_logout.php он сразу закроет сессию и сайт не будет работать. С этой целью мне пришлось немного модернизировать данный файл, введи ссылку на файл out.php,

<tr><td class="loginbox1" align="center">Вход выполнен</td></tr>
<tr><td class="loginbox2" align="center"><a href="out.php">Выйти из админ-панели</a></td></tr>

в котором и будет запускаться функция session_destroy(); с одновременным переходом на страничку авторизации:

<? session_start();
session_destroy();
Header("Location:autorization.php");
?>

 

 

Есть, что сказать? Оставьте свой комментарий?