Меню Рубрики

Как написать админку для сайта на php

Как создать админку для сайта на PHP с нуля

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

Инструменты для управления сайтом:

  • phpmyadmin для работы с базой данных;
  • FTP-клиент, чтобы загружать или удалять файлы;
  • графический редактор, который сжимает изображения;
  • текстовый редактор, в котором оформляются статьи;
  • сервис аналитики для оценки эффективности контента и рекламы.

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

Пишет о программировании, в свободное время создает игры. Мечтает открыть свою студию и выпускать ламповые RPG.

Как создать админку для сайта на PHP

В первую очередь создадим файл admin.php в корне сайта. Пока у него будет такой вид:

Этот код получает данные методами GET и POST, обрабатывает их, а потом выводит что-либо через переменную $echo. Чтобы поисковики не пытались зайти в админку, запретите её индексировать в файле robots.txt:

Основные элементы для работы админки сайта

Дополнительные возможности управления сайтом относятся к разным направлениям PHP, которые невозможно охватить в одной статье. Подробнее обо всём на свете в мире PHP мы рассказываем на курсе «PHP-разработчик с нуля до PRO».

Теперь приступаем к написанию функций, запросов и валидаций.

Авторизация

Чтобы ограничить доступ, создадим форму входа в панель управления:

В переменную $echo прописываем HTML-код формы, которая передает данные на эту же страницу. Затем они обрабатываются:

После отправки формы данные переносятся в супермассив $_SESSION. Затем вызывается функция login (). Она делает запрос в базу данных. Если он проходит удачно, возвращается значение true, если нет — данные из $_SESSION удаляются и возвращается false.

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

Главная страница

Теперь создадим условия, чтобы пользователь делал что-то полезное. Для этого методом GET передаётся название страницы:

В переменную $act попадает значение из $_GET[‘act’], а если его не существует, то просто home. Дальше с помощью функции switch () прописываются действия для каждой страницы.

На главной странице админки размещают все компоненты сайта с возможностью управления:

  • пользователями;
  • статьями и комментариями;
  • карточками товаров;
  • файлами и изображениями;
  • статистикой и рекламными блоками.

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

Редактирование

Как вы могли заметить, в таблицах каждая строчка — это ссылка такого вида:

В переменной act передаётся значение edit_article, а в id — идентификатор статьи. Перейдя по ссылке, администратор попадает на страницу редактирования:

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

Добавление записей в базу данных

Чтобы создать функцию добавления пользователя (или любого другого элемента на сайте), парсим форму и её обработчик:

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

Статистика

Чтобы смотреть статистику посещений, комментирования и другой активности, создаём в базе данных таблицу с полями:

В них записывается общее количество просмотров и комментариев за каждый день, которое выводится на графике. Чтобы это сделать, пропишем HTML-код таблицы:

В качестве источника картинки указывается PHP-файл с кодом:

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

Дополнительные возможности

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

Например, дополнительно можно реализовать:

  • премодерацию комментариев;
  • удаление записей из базы данных;
  • работу с файлами;
  • продвинутый редактор статей;
  • подробную статистику каждой отдельной страницы и так далее.

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

Источник статьи: http://skillbox.ru/media/code/kak_sozdat_adminku_dlya_sayta_na_php_s_nulya/

Админка за 10 минут

Здравствуйте, уважаемое Хабрасообщество!

Я занимаюсь разработкой веб-сайтов. Как правило, это решения под индивидуальные потребности заказчиков. Поэтому я не использую готовые CMS, а предпочитаю складывать кирпичики самостоятельно. Конечно и админскую часть приходиться писать самостоятельно, поскольку она должна выполнять те функции, которые нужны заказчику, но и ничего лишнего не должно быть. И если написать несколько методов для редактирования данных это пол беды, то приходилось ещё и верстать приятный и удобный интерфейс.

Долгое время я использовал Twitter Bootstrap, но он не мог удовлетворить все потребности. Приходилось верстать дополнительные кнопочки и писать скрипты. Но вот однажды, я познакомился с замечательным UI-фреймворком KendoUI от Telerik. Что из этого получилось под катом.

О самом фреймворке уже писалась статья на Хабре. Мы будем использовать библиотеку Web-контролов KendoUI Web. Чтобы понимать, что можно создавать с её помощью можно посетить страничку с демо. Для построения контролов можно использовать как хелперы для ASP.NET, JSP или PHP, так и javascript-виджеты. Последние распространяются по лицензии GPL v3 License, поэтому я использовал именно их. Скачать тот или иной пакет можно здесь. На серверной стороне я использую ASP.NET MVC 4 с пакетом Microsoft ASP.NET Web API OData 4.0.0, уставить который можно с помощью команды PM> Install-Package Microsoft.AspNet.WebApi.OData

Для демонстрации создадим простой класс Article, и добавим ему три свойства разного типа

Далее создадим ApiController для работы с данными. В своем примере я использую Entity Framework, поэтому сразу указываю Scaffolding options

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

Вот и все. Самое время переходить к клиентской части. Для начала подключим KendoUI и JQuery на страницу.

После этого установим и настроим виджет. Подробнее о настройках виджета можно прочитать здесь.

Готово! Теперь можно запускать и проверять. Менее чем за 10 минут мы создали полноценный интерфейс для управления данными, с возможностью пагинации, сортировки и фильтрации. Удобный и приятный. Спасибо KendoUI и формату OData, а Вам за внимание.




Р.S. Кстати есть возможность локализации виджетов. Для этого необходимо подключить соответствующий скрипт из папки js/cultures, который поставляется в архиве с фреймворком.

Источник статьи: http://habr.com/ru/post/175457/

Простая админка для сайта

Как редактировать сайт, установив на него простую админку

Такая админка отличается простотой установки и легкостью использования

Конечно, речь идет, прежде всего, о сайте визитке, о лендинге ( это сайт-одностраничник), о довольно простом сайте без базы данных

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

Из таких «маленьких» CMS могу выделить две. Это Textolite и CMSLand

СMSLand — как она работает

По словам самого разработчика логика работы скрипта построена следующим образом:
По умолчанию в админке открывается файл «index.html» который обычно является главным HTML файлом лэндинга. Но есть возможность редактировать и дополнительные HTML файлы, если речь идет о много-страничном сайте, выбрав их из выпадающего списка в левом верхнем углу, и нажав кнопку «Редактировать».
Акцентирую снова — речь об очень простых сайтах, без скриптов и сложных конструкций, без активного php. Редактирование картинок возможно, если они в простой разметке.

Ниже на скриншоте показаны разделы для редактирования из этой простой админки
Это тексты
Картинки
Код HTML Код CSS.

В разделе «Тексты» — показывается список всех текстовых фрагментов которые присутствуют на странице. Нажав на любой из них, можно изменить его, не касаясь при этом HTML кода. После нажатия на любой из текстовых фрагментов открывается поле редактирования

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

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

Для более продвинутых заказчиков оставлена возможность редактировать HTML код. Кроме того прямо здесь можно отредактировать любой из CSS и JS файлов.

Чтобы использовать данный скрипт, нужно сохранить его рядом с index.html лэндинга. Если набрать в адресной строке http://ваш-сайт.ru/cmsland.php , то мы попадем в нашу админку.

Админка попросит у нас пароль, по умолчанию — пароль: «password». Сам пароль можно изменить, отредактировав строчку скрипта в Notepad++. ( на фото)

Вот, пожалуй, и вся информация об этой CMS, при тестировании были обнаружены некоторые проблемы, но найти разработчика и задать ему вопросы, не удалось. Если разработчик увидит мое описание, прошу написать мне на jekky1@yandex.ru
Источник админки здесь

Textolite — простая админка для сайта

Что бы сказала няня Макфи по поводу админки?

ПРЕЖДЕ ВСЕГО, НЯНЯ МАКФИ СКАЗАЛА БЫ, ЧТО ВОРОВАТЬ — НЕ ХОРОШО. ЭТО ПРО САЙТ «ВСЕ О ГАДЖЕТАХ APPLE В ОДНОМ САЙТЕ» (http://gadget-apple.ru/) И ПРО СТРАНИЦУ http://gadget-apple.ru/delaem-adminku-dlja-sajta.html , ГДЕ СПАРСИЛИ МОЙ ТЕКСТ БЕЗ УКАЗАНИЯ АВТОРСТВА. ТЕКСТ ПРОСТАЯ АДМИНКА ДЛЯ САЙТА ПРИНАДЛЕЖИТ МНЕ И НАХОДИТСЯ НА МОЕМ САЙТЕ .

Продолжим про Няню Макфи и простую админку. Что бы сказала няня Макфи. «В поисках простой админки для сайта находятся те, кто готов управлять сайтом, готов его администрировать, наполнять текстами и «двигать», но. не всегда знает как это делать. Все хотят простую админку, поверьте! Потому что если нет никакого геморроя в редактировании сайта, то продвижение сайта — уже не такой сложный вопрос. По опыту — нет ничего лучше, чем сделать сайт на фреймворках ( Сайты на Мобирис сегодня — отличный выход!), а потом — прикрутить к сайту «админку» Textolite. Да, да, обычный редактор Текстолайт, который имеет очень обширный функционал. Все. Идеальное решение для простого пользователя. «

Источник статьи: http://kupitsait.ru/prostaya-adminka-dlya-saita.php


0 0 голоса
Article Rating
Подписаться
Уведомить о
guest

0 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии