1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
  3. Данный раздел создан исключительно для релизов! Вопросы по лаунчеру или обвязке задавайте ТОЛЬКО в соответсвующей теме автора. Любые другие темы будут удалены, а авторы понесут наказание.

Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Веб [A.2.0 CC]MSC: WebSite Engine

Тема в разделе "Веб-обвязки и лаунчеры", создана пользователем danilko, 8 дек 2013.

Статус темы:
Закрыта.
  1. Автор темы
    danilko

    danilko Старожил Пользователь

    Баллы:
    103
    Выкладываю чистую CMS, без новостной ленты, системы скинов и прочих скриптов специфичных minecraft-сборкам.

    Ссылка(DropBox) | GitHub.com (Со временем сборка будет меняться на более новые версии CMS)

    Что внутри:
    • Ядро
    • Установщик, который будет в A.2.0(без всяких pre)
    • Основные библиотеки системы(авторизация, шаблоны и редакторы текста и кода)
    • Основные административные скрипты(из A.2.0 pre 3)
    • Основной шаблон и шаблоны админ-скриптов
    • Обработчик AJAX-запросов
    Данная сборка полезна тем, кто хочет изучить как работает сама система, без вспомогательных скриптов, тем, кто хочет попробовать сделать свой скрипт\библиотеку\шаблон.

    В постах ниже буду выкладывать краткую информацию о функциях CMS, которые можно использовать при разработке php-скриптов.
    Все вопросы в ЛС, решение самых частых вопросов буду выкладывать сюда.
     
    Последнее редактирование: 5 фев 2015
    Existance нравится это.
  2. Автор темы
    danilko

    danilko Старожил Пользователь

    Баллы:
    103
    Шаблон скрипта.

    Файл "scripts/example.php":
    PHP:
    <?php

    class example{

    }

    ?>
    Для создания своих скриптов используйте менеджер скриптов в панели управления.

    ======================
    = Работаем с библиотеками =
    ======================
    Подключение библиотеки:
    PHP:
    libs::LoadLib($lib_name);
    $lib_name - название библиотеки.
    Возвращает true, если библиотека успешно загружена и false, если не удалось найти файл этой библиотеки.
    Примечание: данную функцию можно не вызывать для библиотек templates и database, т.к. они загружаются ещё до запуска вашего скрипта.

    Получение доступа к библиотеке:
    PHP:
    libs::GetLib($lib_name);
    $lib_name - аналогично.
    Возвращает объект, который был создан при загрузке библиотеки.
    Примечание: возвращает null, если библиотека не загружена или не загрузилась с помощью LoadLib.

    Описание наиболее полезных функций библиотеки "templates".

    Загрузка шаблона.
    PHP:
    libs::GetLib("templates")->GetTmpl($file);
    $file - название html-файла, который нужно загрузить.
    Возвращает файл шаблона, который лижит в папке с основным шаблоном сайта или из папки стандартных шаблонов.

    Загрузка шаблона с заполнением данных.
    PHP:
    libs::GetLib("templates")->GetRTmpl($file,$arr);
    $file - аналогично предыдущей функции.
    $arr - содержит массив переменных шаблона.
    Возвращает шаблон, в котором в шаблонные переменные подставлены данные из массива $arr.
    Примечание: если шаблон не будет найден, то будет возвращено сообщение об ошибке для пользователя.

    Смена основного шаблона страницы(как в менеджере скриптов).
    PHP:
    libs::GetLib("templates")->setPageTmpl($name);
    $name - название шаблона.
    Возвращает true при успешной смене шаблона и false при ошибке.
    Примечание: эта функция может быть использована только в административном интерфейсе скрипта.

    Описание функций библиотеки "users".
    Проверка авторизации посетителя.
    PHP:
    libs::GetLib("users")->GetLogin();
    Возвращает 1, если авторизация пройдена, возвращает 0 в обратном случае.

    Получение логина посетителя.
    PHP:
    libs::GetLib("users")->IsAuthorized();
    Возвращает группу посетителя, если он авторизирован или возвращает "guest", если не авторизирован.

    Получение формы авторизации\регистрации.
    PHP:
    libs::GetLib("users")->GetLoginForm();//авторизация
    libs::GetLib("users")->GetRegisterForm();//регистрация
    Возвращает HTML-код для авторизации\ресгитрации посетителя.
    Примечание: используйте эти функции в комбинации с IsAuthorized, TryLogin и TryRegister.

    Авторизация\регистрация посетителя с помощью форм, которые возвращают GetLoginForm и GetRegisterForm.
    PHP:
    libs::GetLib("users")->TryLogin();//авторизация
    libs::GetLib("users")->TryRegister();//регистрация
    TryRegister возвращает ошибку, если возникла ошибка или "ok", если регистрация прошла успешно.
    TryLogin возвращает true, если авторизация прошла успешно или false в обратном случае.

    Проверка логина и пароля пользователя.
    PHP:
    libs::GetLib("users")->VerifiLogin($login,$password);
    $login - логин пользователя.
    $password - пароль пользователя.
    Воврает true или false, в зависимости от того верна пара логин\пароль.

    Описание функций библиотеки "database".

    Примечание: данная библиотека использует настройки из файла config.php, по этому название таблицы с которой вы работаете может отличаться от названия таблицы, которое вы передаете этим функциям. А так-же предполагается, что в каждой таблице есть поле "id".

    Некоторых функций тут ещё нет, т.к. они и значения их параметров все аналогичны, если хотите можете посмотреть код этой библиотеки - файл "lib/database.php", либо в менеджере скриптов библиотека "database", позже добавлю.

    Вставка данных в таблицу.
    PHP:
    libs::GetLib("database")->insert($table_name,$values);
    $table_name - название таблицы.
    $values - массив данных, в котором название каждого элемента соответствует определенному полю в таблице.

    Очистка таблицы.
    PHP:
    libs::GetLib("database")->deleteAll($table_name);
    $table_name - название таблицы.

    Удаление строки таблицы по значению её поля "id".
    PHP:
    libs::GetLib("database")->deleteOnId($table_name,$id);
    $table_name - название таблицы.
    $id - значение поля "id".

    Получение массива данных в таблице.
    PHP:
    libs::GeLib("database")->getAll($table_name$order$up);
    $table_name - название таблицы.
    $order - название поля, по которому идет сортировка возвращаемого массива.
    $up - true, если значения поля должны увеличиваться и false - в обратном случае.

    Получение строки таблицы по её "id".
    PHP:
    libs::GetLib("database")->getElementOnID($table_name$id)
    $table_name - название таблицы.
    $id - значение поля "id".

    Получение определенного поля таблицы.
    PHP:
    libs::GetLib("database")->getField($table_name$field_out$field_in$value_in);
    $table_name - название таблицы.
    $field_out - название поля, значение которого будет возвращено.
    $field_in - название поля, по которому будет определена строка таблицы.
    $value_in - значение поля, по которому будет определена строка таблицы.

    Получение строки таблицы по значению её поля 'id'.
    PHP:
    libs::GetLib("database")->getFieldOnID($table_name$id$field_out);
    $table_name - название таблицы.
    $id - значение поля "id".
    $field_out - название поля, значение которого будет возвращено.

    Установка значения поля.
    PHP:
    libs::GetLib("database")->setField($table_name$field$value$field_in$value_in);
    $table_name - название таблицы.
    $field - название поля, значение которого будет установлено.
    $value - значение этого поля.
    $field_in - название поля, по которому будет определена строка.
    $value_in - значение поля, по которому будет определена строка.

    Установка значения поля по его "id".
    PHP:
    libs::GetLib("database")->setFieldOnID($table_name$id$field$value);
    $table_name - название таблицы.
    $id - значение поля "id"
    $field - название поля, значение которго будет изменено.
    $value - значение поля, которое будет установлено.


    UPD: Добавлена ссылка на github.
    UPD: немного доделал
    UPD: Начал заполнять wiki на GitHub, может там что-нибудь найдете, если тут не нашли. Ссылка на wiki.
     
    Последнее редактирование: 5 фев 2015
    HoShiMin нравится это.
Статус темы:
Закрыта.

Поделиться этой страницей