Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 30.04.2020
Сообщений: 7

Форма авторизации (Проблема перехода в окно своих ролей/должностей)

30.04.2020, 15:05. Показов 1066. Ответов 12

Студворк — интернет-сервис помощи студентам
Здравствуйте, помогите пожалуйста с формой авторизации, с переходом в окно своей должности по кнопке войти!

На прикрепленном скриншоте показываю что выбираю выбираю должность из выпадающего списка и при заполнении всех остальных данных я по кнопке вход, должен перейти на окно должности, которого указал, скриншот этих окон я тоже прикреплю, регистрация и авторизация и база данных у меня работают нормально, коды проверки и всего остального написаны, просто нужно добавить к этому чтобы кнопка вход считывала значение в должности и перекидывала после проверок на нужное окно, буду очень благодарен!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.04.2020, 15:05
Ответы с готовыми решениями:

Форма авторизации с разделением ролей
Нужно зделать форму авторизации пользователей с двумя формами. По идее с самой формой авторизации проблем нет, НО! Если введено admin...

Форма авторизации с разделением ролей
Нужна помощь в создании формы авторизации, с использованием сессий и разделением ролей. Например, существует 2 роли (преподаватель,...

Форма авторизации с разделением ролей
Здравствуйте! Помогите, пожалуйста, с таким вопросом.. нужно сделать форму авторизации в C# с подключением к бюазе ms sql server. В базе...

12
105 / 57 / 22
Регистрация: 20.12.2009
Сообщений: 1,279
Записей в блоге: 2
30.04.2020, 18:17
Покажите весь код. Окна у вас отдельные php? дайте названия всех файлов
1
0 / 0 / 0
Регистрация: 30.04.2020
Сообщений: 7
30.04.2020, 21:38  [ТС]
Спасибо, вот
Вложения
Тип файла: zip reg and auth.zip (7.3 Кб, 4 просмотров)
0
 Аватар для sad67man
2604 / 1508 / 689
Регистрация: 23.08.2015
Сообщений: 3,839
30.04.2020, 21:45
Вы не указали value у options, поэтому ничего и не приходит
HTML5
1
2
3
4
5
6
<select name="doljnost" required="required">
  <option value="Заказчик">Заказчик</option>
  <option value="Кладовщик">Кладовщик</option>
  <option value="Менеджер">Менеджер</option>
  <option value="Директор">Директор</option>
</select>
1
0 / 0 / 0
Регистрация: 30.04.2020
Сообщений: 7
30.04.2020, 22:31  [ТС]
Цитата Сообщение от sad67man Посмотреть сообщение
Вы не указали value у options, поэтому ничего и не приходит
я указал, все равно при авторизации когда выбираю директор, не переходит на окно директора при авторизации по кнопке входе
0
105 / 57 / 22
Регистрация: 20.12.2009
Сообщений: 1,279
Записей в блоге: 2
30.04.2020, 23:12
В коде есть переходы только на form_auth.php и index.php если окна не index.php то и перехода не будет.
0
 Аватар для sad67man
2604 / 1508 / 689
Регистрация: 23.08.2015
Сообщений: 3,839
30.04.2020, 23:14
Immortalis1st, А зачем выбирать должность при авторизации? Я так понимаю, что должность у пользователя одна. Он не должен выбирать ее динамически при входе. Более того, скорее всего он не должен сам регистрироваться. А это должен делать человек, у которого есть на это право. Регистрировать пользователя, указывая должность. Далее у пользователя будет личный кабинет, в которой в зависимости от роли будут те или иные права.
0
0 / 0 / 0
Регистрация: 30.04.2020
Сообщений: 7
30.04.2020, 23:37  [ТС]
Supersumestria, и как мне прописать правильно код?

Добавлено через 1 минуту
sad67man, задание такое, чтобы переходить на окна своих должностей, на свои рабочие права, нет, при регистрации выбирают должность и при авторизации выбирают должность и переходят на соответствующее окно
0
 Аватар для sad67man
2604 / 1508 / 689
Регистрация: 23.08.2015
Сообщений: 3,839
30.04.2020, 23:49
Immortalis1st, Зачем выбирать должность при регистрации, когда вы можете ее выбрать при авторизации? Зарегистрировался кладовщиком, потом зашел как директор.
0
0 / 0 / 0
Регистрация: 30.04.2020
Сообщений: 7
01.05.2020, 00:57  [ТС]
sad67man, я написал код проверки, зарегался кладовщиком, авторизуешься только кладовщиком, мне нужен код для перехода на соответствующие окна
0
 Аватар для sad67man
2604 / 1508 / 689
Регистрация: 23.08.2015
Сообщений: 3,839
01.05.2020, 02:25
Immortalis1st, В первую очередь вы перемешиваете слои. Поэтому у вас в каждом if/else идут один и тот же код с редиректом. Хотя по сути у вас может быть 2 варианта развития событий - это успешное и не успешное выполнение операции. Авторизация делится на 2 процесса - это распознавание пользователя и логирование, для входа достаточно знать id Пользователя. Для этого можно написать 2 функции
PHP
1
2
3
4
$user_id = signIn($login, $password);
login($user_id);
header("Location: /cabinet.php");
die();
При логировании вы можете запоминать id пользователя в сессию. Затем при каждом запросе доставать его из БД по этому id.

Так же при регистрации. Не всегда нужно пользователя сразу логировать иногда делают редирект на форму входа с сообщением типа "Теперь вы можете войти". Но если нужно автоматически логировать, то используете тоже 2 функции.

PHP
1
2
3
4
$user_id = signUp($login, $password);
login($user_id);
header("Location: /cabinet.php");
die();
Далее, операции принято делать таким образом, что она выполняется либо полностью, либо кидает исключение. Именно это позволяет нам вернуть id пользователя, а не true/false

PHP
1
2
3
4
5
6
7
8
9
try {
    $user_id = signIn($login, $password);
    login($user_id);
    $_SESSION["success_message"] = 'Вы успешно вошли на сайт';
    header("Location: /cabinet.php");
    die();
} catch (DomainException $e) {
    $_SESSION["error_message"] = $e->getMessage();
}
Исключения можно выкинуть из любой вложенности вызываемых методов/функций, что достаточно удобно.

Добавлено через 3 минуты
Что касается отдельных страниц для каждой роли. Так как у нас есть редирект при авторизации и при регистрации, чтоб не дублировать логику, лучше редиректить на одну страницу, которая уже разрулит все это дело. А на каждой странице роли, нужно делать проверку, если роль не соответствует, то делать перенаправление на туже "рулящую страницу", которая уже перенаправит куда нужно. Хотя это все-же странно. Обычно для всех ролей есть грубо говоря одна страница, далее уже идут проверки не на роли, а на права пользователя. Тут уже стоит почитать что-нибудь про RBAC (управление доступом на основе ролей). Задача очень популярная, зачем изобретать велосипед, когда уже все давно придумано)
0
0 / 0 / 0
Регистрация: 30.04.2020
Сообщений: 7
01.05.2020, 18:54  [ТС]
sad67man, ага, спасибо, но я все равно не понял как через этот id делать переходы по ролям, хорошо, почитаю об этом
0
0 / 0 / 0
Регистрация: 30.04.2020
Сообщений: 7
02.05.2020, 20:22  [ТС]
Ребят, помогите, вопрос не решен еще
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.05.2020, 20:22
Помогаю со студенческими работами здесь

Распределение ролей после авторизации в бд
Добрый день. Возникла мысль с автоматическим подбором допустимой роли для пользователей, которые авторизуются при входе в бд. К...

Создание авторизации в приложении с организацией ролей пользователей
Доброго времени суток. Скажите пожалуйста, что нужно для создания авторизации... То есть суть проекта: есть клиент - ему...

Создание сессии для авторизации пользователей и разделения ролей
Здравствуйте, необходимо реализовать авторизацию пользователей и разделение ролей. Через мембершип все более-менее просто, но стало...

Определить число одинаковых должностей и напечатать список должностей сотрудников
Разрешите попросить у вашего форума помощи) Самой не получается написать, совсем уже отчаялась. Дан список сотрудников (10 человек) в...

Нужен пример простой авторизации без ролей и прочих усложнений
В пути понимания структуры MVC дошел до авторизации, погуглил, почитал, много информации для начинающего меня. Нужен пример...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru