X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Разграничение при авторизации
LoaD_hb
LoaD_hb
Topic Starter сообщение 10.1.2010, 21:39; Ответить: LoaD_hb
Сообщение #1


Блин... что то никак не могу понять как все это правильно оформить =(
вот часть кода где я авторизую пользователя:
[PHP]
function login($login, $password)
{
db_connect();
$result = mysql_query("select * from users where login = '$login' and password = '$password'");
if (!$result) {
throw new Exception ('Вход в систему не возможен');
}
if (mysql_num_rows($result) > 0) {
return true;
}
else {
throw new Exception ('Вход в систему не возможен!!');
}
}
[/PHP]

Вот куда и что мне нужно написать чтобы еще проверялась переменная $user_group и в зависимости от значения это переменной (а оно может быть равно 1, 2 и 3) он отправлял на нужную страницу, доступную для определенной группы пользователя. Соответственно эта переменная хранится в базе. Что то я опять никак не соображу...=(
Как я понимаю это должно делаться в запросе к базе:
[PHP]
$result = mysql_query("select * from users where login = '$login' and password = '$password'");
[/PHP]
а вот где именно...:hmhm:
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexdrob
alexdrob
сообщение 10.1.2010, 21:54; Ответить: alexdrob
Сообщение #2


ну смотря как у вас всё усроенно, например возращайте

[PHP]if (mysql_num_rows($result) > 0) {
return true; // тут
}[/PHP]

не true а $result, а далее получайте уровень доступа из результата и переадресовываете на нужную страницу.
Или возвращайте сразу уровень доступа и опять же переадресовывайте

вообще вариантов наверное много можно придумать.
например
[PHP]

function login($login, $password)
{
db_connect();
$result = mysql_query("select * from users where login = '$login' and password = '$password'");
if (!$result) {
throw new Exception ('Вход в систему не возможен');
}
if (mysql_num_rows($result) > 0) {
$row=mysql_fetch_array($result);
return $row['GROUP_ID'];
}
else {
throw new Exception ('Вход в систему не возможен!!');
}
}

switch (login($login, $password))
{
case '1':
header("location: index1.php");
break;

case '2':
header("location: index2.php");
break;

case '3':
header("location: index3.php");
break;
} [/PHP]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
LoaD_hb
LoaD_hb
Topic Starter сообщение 10.1.2010, 22:07; Ответить: LoaD_hb
Сообщение #3


alexdrob,спасибо большое, будем пробовать!))

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Мегамаркет. Скидка 1000 рублей при покупке от 5000 рублей на все, на первый заказ.
Мегамаркет. Скидка 1000 рублей при покупке от 5000 рублей на все, на п
7 stu999 1753 31.3.2024, 11:19
автор: stu999
Открытая тема (нет новых ответов) Получил странную ссылку при линкбилдинге
Как поведет себя поиск при обнаружении странной ссылке?
10 r0mZet 2203 24.10.2022, 19:23
автор: Wachowski
Горячая тема (нет новых ответов) 300 площадок под вечные ссылки на выбор: ТИЦ 20-9400, PR 0-6, ЯК, DMOZ. Скидки при пакетном заказе!
65 inkon 30375 19.7.2022, 13:41
автор: Funoman
Горячая тема (нет новых ответов) тИЦ отменили! Новый показатель Яндекса ИКС! Лучшие площадки под размещение. Бесплатное написание статей при любом заказе.
Эксклюзивное предложение. Успей получить написание статей БЕСПЛАТНО
71 VIMstat 78476 21.6.2022, 9:38
автор: VIMstat
Открытая тема (нет новых ответов) Отображение нужного блока при клике.
0 bhtml 1663 10.7.2020, 15:18
автор: -bhtml-


 



RSS Текстовая версия Сейчас: 19.4.2024, 10:23
Дизайн