Две разные страницы входа в систему в соответствии с ID с использованием PHP и MySQL - PullRequest
1 голос
/ 04 июня 2009
        $query = "SELECT *
              FROM users
              WHERE username = '".mysql_escape_string($username)."'
              AND password = '".mysql_escape_string($password)."'";
        $result = mysql_fetch_array(mysql_query($query));

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

Мой SQL-запрос.

CREATE TABLE IF NOT EXISTS `users` (
  `yourID` int(10) unsigned NOT NULL auto_increment,
  `username` varchar(26) collate latin1_general_ci NOT NULL,
  `password` varchar(26) collate latin1_general_ci NOT NULL,
   PRIMARY KEY  (`yourID`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=87992 ;

Страница входа будет одинаковой для администратора и модератора.

Ответы [ 5 ]

6 голосов
/ 04 июня 2009

Я не знаю, правильно ли я понимаю ваш вопрос, но обычно система входа в систему не должна иметь никакого значения между ролями пользователей. После входа в систему вы можете проверить права вошедшего в систему пользователя и предоставить ему доступ к закрытым областям вашего приложения.

2 голосов
/ 04 июня 2009

Я не уверен, что понимаю этот вопрос. Но недавно я внедрил систему входа в систему, где мне нужна была учетная запись пользователя и учетная запись администратора. Я добавил в свою таблицу пользователей столбец «привилегия», в котором затем сохранил числовой номер, связанный с уровнем привилегий этого пользователя. Затем на ограниченных страницах я просто проверил, имеет ли пользователь необходимый уровень доступа для просмотра страницы.

  • Добавить пользовательскую таблицу атрибутов привилегий (tinyInt).
  • Добавить активный (логический) атрибут к таблица пользователей.
  • Добавить атрибут cookie (varchar) к таблица пользователей.

// Выполняется при обращении к странице

checkLogin ($ привилегия) {

//Use Cookie to determine which user is accessing page
//Determine if user is active (toggled when logged in)
//retrieve users privilege level
//check against passed in value 
//return true or false

}

// Php для сайта.

если (checkLogin (0)) {

//0 – guest
//1 – user
//3 – admin

}

2 голосов
/ 04 июня 2009

Возможно, я неправильно понимаю, что вы хотите, но вы можете добавить другой столбец в вашу таблицу пользователей, чтобы различать разные типы пользователей. Вы можете добавить целочисленный столбец для этого:

ALTER TABLE users ADD userlevel tinyint NOT NULL default 0;

Тогда вы можете установить это в соответствии с тем, что вы хотите, чтобы пользователь делал, например,

0 = normal user 
1 = moderator 
2 = admin
etc.

Когда пользователь входит в систему, вы можете получить это значение в запросе и использовать его / сохранить в сеансе и т. Д., Чтобы предоставить доступ к ограниченным действиям.

Вы также можете посмотреть на использование типа перечисления MySQL в качестве альтернативы целому числу.

1 голос
/ 04 июня 2009

Полагаю, вы хотите различать «обычных пользователей» и «администраторов». Почему бы просто не добавить еще один столбец в таблицу пользователей, например, AdminStatus и сделать его int, ноль для нет, один для да. Затем в запросе на вход в систему просто проверьте AdminStatus.

0 голосов
/ 04 июня 2009

вам нужно добавить поле типа пользователя в таблицу, а вы знаете, что такое групповой пользователь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...