Я создаю блог-сайт с нуля, поэтому я не использую никаких фреймворков, только простые html, css, javascript и php.
Что такое "хорошо" привычка "и безопасный способ проверить в Javascript, если администратор или какой-либо пользователь вошел в систему? Например, если зарегистрирован нормальный участник, я не хочу показывать кнопки / страницы, такие как «Новое сообщение» или «Удалить сообщение». Теперь я делаю это с ajax, я вызываю мой маршрутизатор. php (все запросы get и post обрабатываются там) и отправляю готовый клиентский файл ie на сервер, где маршрутизатор. php проверяет, есть ли cookie ["token"] равен session ["token"], и только тогда он отправляет информацию (имя пользователя и статус участника в функцию успеха ajax) в Javascript, и там я делаю что-то вроде if ( username == "admin"), затем показать "Кнопка удаления". Код:
if(document.cookie.indexOf("token") != -1){ // check if cookie["token"] exists
$.ajax({ //create an ajax request to router.php
type: "POST",
url: "../php/router.php", //cookie_check data only
data: {"cookie_check" : document.cookie.split(';')[1].split("=")[1]},
dataType: "json",
success: function(response){
// sign in button transform to username
var username = response[0]["username"];
var status = response[0]["status"];
$("#signInMenu").empty();
var usernameList = document.createElement("li");
usernameList.innerHTML = username;
usernameList.className = "usernameCss";
document.getElementById("menuNavId").appendChild(usernameList);
// check which page is loaded
var sPath = window.location.pathname;
var currentPage = sPath.substring(sPath.lastIndexOf('/') + 1);
if(currentPage == "posts.html" && username === "admin"){
//PLACE BUTTONS
}
}
});
}
Это работает, но я не думаю, что это правильный способ сделать это. Все мои представления находятся в. html файлах, контроллеры - JavaScript, которые включены в. html файлы, и в них я называю ajax, и есть только 1 php файл, который обслуживает все запросы от ajax. Можете ли вы как-то объяснить понятие / хорошая привычка?