ЗАКАЗ

Админка позволяет делать копии и вставки таблиц базы данных mysql, печатать и портировать sql-запросы

Область применения

Практически любому разработчику web-приложений приходится переодически вносить изменения в базу данных, выполнять специфический поиск или обновление записей, предварительно сделав резервные копии таблиц. Если вы арендуете хостинг, то наиболее удобным способом работать с базой данных удаленно будет через web-интерфейс. Хотя админок для работы с базами данных на php существует довольно много, я решил сделать собственный, понятный и простой проект без лишних опций ориентируясь только на собственный опыт что нужно для web-разработчика.

Поддерживаемые модули

В связи с переводом моего сайта на php v7.2 админка была обнолена и теперь работает с аналогичной версией. Были устранены некоторые недочеты и изменена инструкция по настройке.

Аминка тестировалась локально на Open Server v 5.3.6.0, также развернута и работает на хостинге, поддерживает следующие версии:

  • Сервер: Apache-2.4+Nginx-1.17
  • php-версия: PHP-7.2
  • mysql-версия: MySQL-5.6
  • Кодировки: HTTP-сервер - utf-8, mysql-сервер - utf8_general_ci

Установка

Скачать проект можно по ссылке https://github.com/rightJoint/simple-php-mysql-admin или клонировав репозиторий с помощью git.

git clone https://github.com/rightJoint/simple-php-mysql-admin sa.local

Для работы используется библиотеки javascript (jquery-3.2.1, jquery.cookie, Elegant-Loading-Indicator-jQuery-Preloader), скрипты должны размещаться по пути /source/js, теперь включены в состав репозитория и весь проект целиком можно скачать с этого стайта.

Настройка .htaccess

Для работы с админкой необходимо корректно настроить файл .htaccess в корне проекта: запретить доступ к служебным каталогам и файлам и выполнить переадресацию всех запросов на index.php

RewriteEngine on
RewriteBase /

RewriteRule ^data/db(.*)$ ?forbidden=yes
RewriteRule ^source/_conf(.*)$ ?forbidden=yes
RewriteRule ^(.*)views(.*)$ ?404=yes
RewriteRule ^(.*)actions(.*)$ ?404=yes

RewriteCond %{REQUEST_FILENAME} !-f

DirectoryIndex index.php
RewriteRule . index.php [L]

Конфигурация:

Файл с именами и зашифрованными паролями пользователей админки должен располагаться по пути: /source/_conf/admin/adminUsers.php По умолчанию логин admin и пароль root, пример файла:

{"admin":"$1$2m\/.hl..$IwaAYs5hJiIIqG9efaqA61"}

Файл с настройками для подключения к серверу и базе данных должен размещаться по пути /source/_conf/db_conn.php и иметь следующий вид:

{"CONN_LOC":"localhosts","CONN_USER":"root","CONN_PW":"root","CONN_DB":""}

Работа с админкой

Модуль сервер

После авторизации по адресу /admin вам будет доступен интерфейс админки, настройте подключения к вашему sql-серверу и базе данных с помощью интерфейса или изменив конфигурационный файл db_conn.php

Интерфейс и назначение каждого модуля админки понятны и описывать их не имеет смысла. Задайте настройки как в примере выше в модуле админки 'Сервер', после перейдите в модуль 'SQL' и выполните запрос на создание базы данных. Далее в настройках сервера укажите вашу базу данных в "CONN_DB". После успешного подключения к базе данных можно перейти к созданию таблиц.

Логин и пароль для OpenServer различных версий могут различатся, CONN_DB должно быть пустым для создания БД

CREATE DATABASE my_db CHARACTER SET utf8 COLLATE utf8_general_ci

Работа с таблицами

Удалять, очищать, копировать и вставлять таблицы можно с помощью модуля admin/tables Для создания таблиц или портируйте запрос в базу данных или используйте готовые скрыпты, которые в этом примере расположены по пути /data/db/tablesList

модуль таблицы

Комментарии: 1Ответы: 1

  • Avatar
    mrSmith
    2019-04-29 10:39:56

    Напишите про совместимость админки с вервсиями пхп и сервера, на чем разворачивать проект

    • Alexey Pichugin
      2019-04-29 11:46:39

      В описание проекта добавлены поддерживаемые модули. Также в репозиторий добавлены js, конфиги и картинки чтоб максимально упростить разворачивание проекта.