Сенсей
Новичок
Пишу CMS - вернее уже написана... есть вопросы
Уже стоит сайт на cms
В самой cms очень много функция.... но в основном меня интересует моя система пользователей.
-------------
Правильный ли у меня подход?
Есть файл который грузится со скриптом ВСЕГДА
Вначале этого файла я определяю является ли посетитель зарегистрированным пользователем:
Код конечно можно упростить... но меня волнует имено организация.. принцип...
У меня принцип такой - один раз определяем - юзер это или гость... и в скрипте уже проверяем "флаг" 1 или 0
Есть CMS где в каждой части где идет разграничение функция гостей и пользователей проверка происходит каждый раз заного... то есть каждый раз запускается код который у меня находится выше function is_user()
Ну и вообще - может есть какие советы...
Уже стоит сайт на cms
В самой cms очень много функция.... но в основном меня интересует моя система пользователей.
-------------
Правильный ли у меня подход?
Есть файл который грузится со скриптом ВСЕГДА
Вначале этого файла я определяю является ли посетитель зарегистрированным пользователем:
PHP:
if (!empty($_COOKIE['user']))
{
# берем инфу с кукис
$user = base64_decode($_COOKIE['user']);
$pos = strrpos($user, ':');
$u_login = substr($user, 0, $pos);
$u_pass = substr($user, $pos+1);
if (!empty($u_login) AND !empty($u_pass))
{
# проверяем есть ли такой юзер в базе и берем некоторую инфу
$res = sql_query("select user_id, user_nick_name, user_new_messages from users where user_nick_name='".adsl($u_login)."' AND user_password='".adsl($u_pass)."'", $dbi);
if (sql_num_rows($res))
{
list($uid, $unn, $user_new_messages) = sql_fetch_row($res);
# определяю константу с ID юзера что бы использоваать в любой части скрипта
define('USER_ID', $uid);
# тоже самое с ником пользователя
define('USER_NICK', $unn);
# при каждом обновлении страници робновляю время и ip пользователя
sql_query("update users set user_last_visit=NOW(), user_ip='".$user_ip."' where user_id='".USER_ID."'", $dbi);
define('IS_USER', 1);
}
}
}
# в последствии в скрипте если надо вывести что то только зарегистрированным пользователям юзаю if(is_user()) { {};
function is_user()
{
if (defined('IS_USER'))
{
return 1;
}
return 0;
}
У меня принцип такой - один раз определяем - юзер это или гость... и в скрипте уже проверяем "флаг" 1 или 0
Есть CMS где в каждой части где идет разграничение функция гостей и пользователей проверка происходит каждый раз заного... то есть каждый раз запускается код который у меня находится выше function is_user()
Ну и вообще - может есть какие советы...
, при этом хотелось бы спросить - кто это "они" - если это пользователи, то, по-моему, они ничего в куки не помещают, если имелись ввиду программеры, то опять же "любовь или не любовь" программиста не должна играть огромной роли для пользователя. Например, в то время. когда я программирую, то у меня открыто несколько броузеров одновременно (и ИЕ, и Опера, и ФФ) при этом я могу сидеть и на нескольких сайтах. И отключив для проверки куки, я не хочу задумываться почему я никак не могу залогинится на каком-нибудь портале... Это моё мнение как пользователя чужого проекта. Людей, которые отключают куки не так уж и много, но и не мало. Так уж случилось, что и я попадаю в их число время от времени.
) из одной таблицы: "уже не придется повторно делать проверку"