У вас должна быть одна таблица, содержащая следующие столбцы:
id (уникальный, основной), имя пользователя, пароль, роль (INT, будет назначено 1-3 для участника,персонал или корректор в зависимости от пользователя)
Дополнительно
Вы можете создать другую таблицу с именами ролей, если хотите настроить ее следующим образом:
id (уникальный, основной), заголовок (параметры для заголовка могут быть принципалом, персоналом или сотрудниками)
Когда пользователь входит в систему, просто выполните что-то вроде
if($role == 1){
// redirect to principal page
}
elseif($role == 2){
// redirect to staff page
}
elseif($role == 3){
// redirect to corres page
}
Я не уверен, но яЯ считаю, что это будет работать.Попробуйте этот запрос.
(SELECT '1' AS role FROM table1 WHERE username = $username AND password = $password)
UNION ALL
(SELECT '2' AS role FROM table2 WHERE username = $username AND password = $password)
UNION ALL
(SELECT '3' AS role FROM table3 WHERE username = $username AND password = $password)
Предполагая, что пользователь находится только в ОДНОЙ из этих трех таблиц, он должен соответствовать имени пользователя и паролю и выяснить, из какой таблицы идет пользователь.Затем вы можете извлечь роль, используя
$role = $row['role'];
Если комбинация имени пользователя и пароля неверна, то $ role будет пустым или вы можете получить количество строк [используя $ iscorrectuser = mysql_num_rows ($ query)], где есть совпадение и число строк будет равно 0. Затем вы можете перенаправить пользователя, пытающегося войти, с сообщением об ошибке «Неудачный вход в систему».