История изменений
Исправление MOPKOBKA, (текущая версия) :
Я метарпог разработчик, то есть один из лучших разработчиков в текущем веке. Так что слушай! У тебя отстой полный, выбрось и забудь, это ужасно.
Роутинг вообще не нужен, если тебе нужен /takoy-razdel/ то создай /var/www/takoy-razdel/index.php.
Но тебе нужен будет API для фронта, вот тут я предлагаю тебе революционную схему.
user.php
<? require_once $_SERVER['DOCUMENT_ROOT'] . '/bestcms/startpage.php'; ?>
<? CApiManager::Handle([
// @ - проверка на авторизацию отключается
// sLogin - проверка типа по венгерской нотации
// $sLogin - автоматическое прокидывание аргументов
"@register|sLogin,sPassword" => function($sLogin, $sPassword) {
...
return $result; // преобразуется в json
},
// проверка на авторизацию автоматическая
// еще бы не забыть про csrf
"user_info" => function() {
...
},
"change_password|sOldPassword,sNewPassword" => function($sOldPassword, $sNewPassword) {
...
}
]); ?>
<? if(CUser::IsAuthorized()): ?>
<!-- Профиль -->
<? else: ?>
<!-- Регистрация -->
<? endif; ?>
<? require_once $_SERVER['DOCUMENT_ROOT'] . '/bestcms/endpage.php'; ?>
На одной странице и API, и отображение. Тяжелая логика выносится естественно в отдельные файлы.
CApiManager::Handle смотрит $_REQUEST, и если там есть BESTCMS_API=Y, то обрабатвыает запрос сам, не находит функцию - выбрасывает ошибку.
Исправление MOPKOBKA, :
Я метарпог разработчик, то есть один из лучших разработчиков в текущем веке. Так что слушай! У тебя отстой полный, выбрось и забудь, это ужасно.
Роутинг вообще не нужен, если тебе нужен /takoy-razdel/ то создай /var/www/takoy-razdel/index.php.
Но тебе нужен будет API для фронта, вот тут я предлагаю тебе революционную схему.
user.php
<? require_once $_SERVER['DOCUMENT_ROOT'] . '/bestcms/startpage.php'; ?>
<? CApiManager::Handle([
// @ - проверка на авторизацию отключается
// sLogin - проверка типа по венгерской нотации
// $sLogin - автоматическое прокидывание аргументов
"@register|sLogin,sPassword" => function($sLogin) {
...
return $result; // преобразуется в json
},
// проверка на авторизацию автоматическая
// еще бы не забыть про csrf
"user_info" => function() {
...
},
"change_password" => function() {
...
}
]); ?>
<? if(CUser::IsAuthorized()): ?>
<!-- Профиль -->
<? else: ?>
<!-- Регистрация -->
<? endif; ?>
<? require_once $_SERVER['DOCUMENT_ROOT'] . '/bestcms/endpage.php'; ?>
На одной странице и API, и отображение. Тяжелая логика выносится естественно в отдельные файлы.
CApiManager::Handle смотрит $_REQUEST, и если там есть BESTCMS_API=Y, то обрабатвыает запрос сам, не находит функцию - выбрасывает ошибку.
Исходная версия MOPKOBKA, :
Я метарпог разработчик, то есть один из лучших разработчиков в текущем веке. Так что слушай! У тебя отстой полный, выбрось и забудь, это ужасно.
Роутинг вообще не нужен, если тебе нужен /takoy-razdel/ то создай /var/www/takoy-razdel/index.php.
Но тебе нужен будет API для фронта, вот тут я предлагаю тебе революционную схему.
user.php
<? require_once $_SERVER['DOCUMENT_ROOT'] . '/bestcms/startpage.php'; ?>
<?
CApiManager::Handle([
// @ - проверка на авторизацию отключается
// sLogin - проверка типа по венгерской нотации
// $sLogin - автоматическое прокидывание аргументов
"@register|sLogin,sPassword" => function($sLogin) {
...
return $result; // преобразуется в json
},
// проверка на авторизацию автоматическая
// еще бы не забыть про csrf
"user_info" => function() {
...
},
"change_password" => function() {
...
}
]);
?>
<? if(CUser::IsAuthorized()): ?>
<!-- Профиль -->
<? else: ?>
<!-- Регистрация -->
<? endif; ?>
<? require_once $_SERVER['DOCUMENT_ROOT'] . '/bestcms/endpage.php'; ?>
На одной странице и API, и отображение. Тяжелая логика выносится естественно в отдельные файлы.
CApiManager::Handle смотрит $_REQUEST, и если там есть BESTCMS_API=Y, то обрабатвыает запрос сам, не находит функцию - выбрасывает ошибку.