Все вы знаете, что в Zennoposter появилась прекрасная возможность работать с базами данных. И основной вопрос: “В чем же преимущество базы данных над excel таблицей”. Самый очевидный ответ – база данных позволяет легко манипулировать строками, т.е. задавать критерии поиска, сортировки и т.д. И все это – одной строчкой кода. Единственный минус – это плохая визуализация. Поэтому в данной статье я покажу, как за 5 минут создать для базы красивый веб интерфейс (админку). И для этого не нужно обладать какими-то знаниями.
В этом нам поможет XCRUD. XCRUD – php скрипт, который за две минуты поможет вам визуализировать таблицу, которую легко редактировать. Также у него имеется ряд удобных фишек, о которых речь пойдет ниже.
Итак, первое что нужно, это скачать скрипт и закинуть его на хостинг (если у вас нет хостинга, то можете работать через OpenServer).
Далее переходим в папку xcrud и редактируем файл xcrud_config.php (прописываем данные для подключения к базе данных):
Те же самые данные мы добавляем в Zennoposter в настройки подключения к базе данных.
Основная часть сделана. Осталось создать в корне домена файл index.php и добавить туда несколько строчек кода:
Где xcrudtable – название таблицы базы данных
По сути, после этого у нас уже получается что-то наподобие таблицы Excel, ячейки которой легко редактировать.
Однако данный скрипт позволяет сделать намного больше.
Все удобства пишутся в виде функций в файле function.php
Приведу несколько примеров из шаблона для публикации постов Вконтакте.
При нажатии на эту кнопку меняется значение в столбце ‘Опубликовать’. Т.е. мы быстро можем поставить нужный нам пост на модерацию, одним кликом мыши.
При этом в самом шаблоне достаточно выбирать все посты, у которых значение в столбце publish (Опубликовать?) равно 1.
Все просто. В самом файле index.php делаем следующее.
Создаем экшны:
И кнопки, которые будут вызывать эти экшны.
Все, осталось в файле function.php описать, что будут делать вызываемые функции 'publish_action' и 'unpublish_action'
В нашем случае, они будут менять значение в столбце ‘Publish’ с нуля на единицу.
Кстати, все таблицы, для того, чтобы они корректно работали с xcrud, должны иметь столбец id – первичный ключ.
XCRUD еще хорош тем, что он автоматически умеет определять, какого типа у вас столбцы, и в зависимости от этого меняет интерфейс при редактировании. Так, если у вас будет в базе данных ячейка типа Дата, то при редактировании будет удобный календарь.
В этом нам поможет XCRUD. XCRUD – php скрипт, который за две минуты поможет вам визуализировать таблицу, которую легко редактировать. Также у него имеется ряд удобных фишек, о которых речь пойдет ниже.
Итак, первое что нужно, это скачать скрипт и закинуть его на хостинг (если у вас нет хостинга, то можете работать через OpenServer).
Далее переходим в папку xcrud и редактируем файл xcrud_config.php (прописываем данные для подключения к базе данных):
Код:
// default connection
public static $dbname = 'xcrud'; // Имя базы данных
public static $dbuser = 'root'; // Имя пользователя
public static $dbpass = ''; // // Пароль пользователя
public static $dbhost = 'localhost'; // Хост.
Основная часть сделана. Осталось создать в корне домена файл index.php и добавить туда несколько строчек кода:
Код:
include('xcrud/xcrud.php');
$xcrud = Xcrud::get_instance();
$xcrud->table(‘xcrudtable’);
echo $xcrud->render();
По сути, после этого у нас уже получается что-то наподобие таблицы Excel, ячейки которой легко редактировать.
Однако данный скрипт позволяет сделать намного больше.
Все удобства пишутся в виде функций в файле function.php
Приведу несколько примеров из шаблона для публикации постов Вконтакте.
- Кнопка для быстрой модерации постов.
При нажатии на эту кнопку меняется значение в столбце ‘Опубликовать’. Т.е. мы быстро можем поставить нужный нам пост на модерацию, одним кликом мыши.
При этом в самом шаблоне достаточно выбирать все посты, у которых значение в столбце publish (Опубликовать?) равно 1.
Все просто. В самом файле index.php делаем следующее.
Создаем экшны:
Код:
$xcrud->create_action('publish', 'publish_action'); // action callback, function publish_action() in functions.php
$xcrud->create_action('unpublish', 'unpublish_action');
Код:
$xcrud->button('#', 'unpublished', 'icon-close glyphicon glyphicon-remove', 'xcrud-action',
array( // set action vars to the button
'data-task' => 'action',
'data-action' => 'publish',
'data-primary' => '{id}'),
array( // set condition ( when button must be shown)
'publish',
'!=',
'1')
);
$xcrud->button('#', 'published', 'icon-checkmark glyphicon glyphicon-ok', 'xcrud-action', array(
'data-task' => 'action',
'data-action' => 'unpublish',
'data-primary' => '{id}'), array(
'publish',
'=',
'1'));
В нашем случае, они будут менять значение в столбце ‘Publish’ с нуля на единицу.
Код:
function publish_action($xcrud)
{
if ($xcrud->get('primary'))
{
$db = Xcrud_db::get_instance();
$query = 'UPDATE groupvk SET `publish` = \'1\' WHERE id = ' . (int)$xcrud->get('primary');
$db->query($query);
}
}
function unpublish_action($xcrud)
{
if ($xcrud->get('primary'))
{
$db = Xcrud_db::get_instance();
$query = 'UPDATE groupvk SET `publish` = \'0\' WHERE id = ' . (int)$xcrud->get('primary');
$db->query($query);
}
}
XCRUD еще хорош тем, что он автоматически умеет определять, какого типа у вас столбцы, и в зависимости от этого меняет интерфейс при редактировании. Так, если у вас будет в базе данных ячейка типа Дата, то при редактировании будет удобный календарь.
- Номер конкурса статей
- Шестой конкурс статей
- Тема статьи
- Другое
Вложения
-
15-12-2016 14-08-34.jpg51 KB · Просмотры: 8 461 -
15-12-2016 14-40-09.jpg97,2 KB · Просмотры: 8 551 -
15-12-2016 14-35-59.jpg109,9 KB · Просмотры: 8 592 -
15-12-2016 14-53-21.jpg117,1 KB · Просмотры: 8 247 -
15-12-2016 14-58-22.jpg85,1 KB · Просмотры: 8 276 -
15-12-2016 15-08-04.jpg73,9 KB · Просмотры: 8 472 -
15-12-2016 15-14-56.jpg192,9 KB · Просмотры: 1 348 -
15-12-2016 15-18-59.jpg28,2 KB · Просмотры: 1 337





