Форум программистов и сисадминов CyberForum.ru
Вернуться   Форум программистов и сисадминов CyberForum.ru > Форум Форум web-программистов > Форум PHP > Форум PHP для начинающих
Восстановить пароль Регистрация

Ответ Создать новую тему
 
Старый 15.07.2012, 16:20   #1
Братуха
Форумчанин
 
Аватар для Братуха
 
Регистрация: 15.07.2012
Сообщений: 679
Репутация: 4 (4)
Как разделить пользователей на три группы? / PHP для начинающих

Доброго временм суток. У меня такой вопрос как мне можно поделить пользователей на три группы, при регистрации они ввводят почти одинаковую информацию только перед регистрацией они выбирают в какую группу их отнести и главное что бы после авторизации у них были разные личные кабинеты, по тому что каждая группа выполняет различные операции. Может есть готовое что-то похожее? Зарание огромное спасибо.
Старый 15.07.2012, 16:29   #2
DrobyshevAlex
Форумчанин
 
Регистрация: 31.05.2012
Сообщений: 2,956
Репутация: 1129 (1079)
Лучшие ответы: 14
Ну так добавьте поле в таблицу профиля пользователя в котором и будет храниться номер группы.
Другие темы раздела Форум программистов PHP. Вопросы начинающих по PHP. Помощь в решении задач на PHP.
PHP Ошибка в файле .htaccess
Движок самописный. Выбивает ошибку 500. Без этого файла будет выбивать ошибку Fatal error: Call to undefined method DB::n() Options -MultiViews -Indexes DirectoryIndex index.php index.html AddDefaultCharset UTF-8 RewriteEngine on RewriteBase / ErrorDocument 404 /404.php ErrorDocument 403...
Странная ошибка в конце файла PHP
Такая проблема... Создаю счётчик просмотров страницы на php. Сначала сделал обычный счётчик без использования COOKIE и всё работало нормально. Но захотелось доработать скрипт и получил ошибку... на индексной странице я сделал ссылку на страницу счётчика -и вот его код(счётчика просмотров)!...
Старый 15.07.2012, 16:38  [ТС]   #3
Братуха
Форумчанин
 
Аватар для Братуха
 
Регистрация: 15.07.2012
Сообщений: 679
Репутация: 4 (4)
Цитата Сообщение от DrobyshevAlex Посмотреть сообщение
Ну так добавьте поле в таблицу профиля пользователя в котором и будет храниться номер группы.
Я добавлю, а вот как разные кабинеты после авторизации сделать, как это сделать, я просто начинающий "программист"
Старый 15.07.2012, 16:50   #4
KOPOJI
Супер-модератор
 
Аватар для KOPOJI
 
Регистрация: 12.06.2012
Сообщений: 14,903
Репутация: 12213 (4932)
Лучшие ответы: 98
создаете новую таблицу с группами, например с тремя полями.
id, name,number - (можно и с двумя, по id - но т.к. вы любите часть удалять и не трункатить все - то лучше третье поле еще)
и в первом первичный ключ, во втором - название группы, в третьем номер группы (1,2,3)
в таблице с юзерами добавляете поле group и туда заносите номер группы из таблицы с группами.

Добавлено через 2 минуты
http://www.anton-pribora.ru/articles/mysql/mysql-join
Старый 15.07.2012, 16:50
Google
Объявления
Как разделить пользователей на три группы? / PHP для начинающих

Старый 15.07.2012, 16:52   #5
pyramida
Форумчанин
 
Регистрация: 14.07.2012
Сообщений: 366
Репутация: 66 (66)
Лучшие ответы: 2
Цитата Сообщение от Братуха Посмотреть сообщение
Я добавлю, а вот как разные кабинеты после авторизации сделать, как это сделать, я просто начинающий "программист"
Сделайте условие на странице если пользователь такой то группы тое ему показывать тото и тото, а если другой то только это так примерно.
Старый 15.07.2012, 19:51   #6
c4boomb
Форумчанин
 
Аватар для c4boomb
 
Регистрация: 20.04.2011
Сообщений: 657
Репутация: 195 (162)
Записей в блоге: 1
Лучшие ответы: 2
Например вы получили из таблицы узеров в переменную $us_group число от 1 до 3
если 1 то группа Админы
если 2 то группа Пользователи
если 3 то группа Василии
Код PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
if($us_group==1){
header("Location:adminka/admin.php");
}
if($us_group==2){
header("Location:user_kabinet/user.php");
}
if($us_group==3){
header("Location:vasya_kabinet/vasya.php");
}
else
{
header("Location:login.php");
}
Этот код отправляет юзеров на 4 страницы взависимости от их группы. На работоспособность не проверял, возможны ошибки!
Старый 15.07.2012, 21:36   #7
DrobyshevAlex
Форумчанин
 
Регистрация: 31.05.2012
Сообщений: 2,956
Репутация: 1129 (1079)
Лучшие ответы: 14
Если уж так, то лучше switch юзать
Старый 15.07.2012, 23:01  [ТС]   #8
Братуха
Форумчанин
 
Аватар для Братуха
 
Регистрация: 15.07.2012
Сообщений: 679
Репутация: 4 (4)
Цитата Сообщение от c4boomb Посмотреть сообщение
Например вы получили из таблицы узеров в переменную $us_group число от 1 до 3
если 1 то группа Админы
если 2 то группа Пользователи
если 3 то группа Василии
Код PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
if($us_group==1){
header("Location:adminka/admin.php");
}
if($us_group==2){
header("Location:user_kabinet/user.php");
}
if($us_group==3){
header("Location:vasya_kabinet/vasya.php");
}
else
{
header("Location:login.php");
}
Этот код отправляет юзеров на 4 страницы взависимости от их группы. На работоспособность не проверял, возможны ошибки!
А могу ли я просто создать три таблицы в базе данных на каждую группу с одинаковыми значениями, только значения группы разные? Смогу ли я потом при авторизации подключить 3 таблицы с профилями?
Старый 15.07.2012, 23:20   #9
KOPOJI
Супер-модератор
 
Аватар для KOPOJI
 
Регистрация: 12.06.2012
Сообщений: 14,903
Репутация: 12213 (4932)
Лучшие ответы: 98
можете и так. только как вы предполагаете подключать все таблицы сразу?)
просто добавляете к юзерам в таблицу еще одно поле с цифрой, например group и в нем смотря какая группа нужная цифра 1, 2, 3, и т.д.
и затем что то типа
Код PHP
1
2
3
4
5
6
7
8
9
10
while($row = *_fetch_assoc($res))
{
switch($row['group']) {
case '1': $table = "first";break;
case '2': $table= "second";break;
case .....
}
}
$query="SELECT * FROM $table";
*_query($query); // извлекаете и т.д.
Добавлено через 1 минуту
только появляется вопрос. зачем собственно такое придумывать - лишний свитч (или if-else, как вам угодно) вместо одного простого запроса???
Старый 15.07.2012, 23:20
Yandex
Объявления
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать новую тему

Похожие темы
Тема Автор
PHP для начинающих Как разделить результат на три строки?
Здравствуйте, уважаемые господа программисты. Возникла проблема. Сам в программировании - дуб. Есть кусок кода, берущий данные из базы и выдающий их на страничку. Тупо по порядку. Каким образом можно сепарировать результаты по три строки с разделением (черточкой (через ссылку на изображение...
ipoopi
Pascal ABC Три группы студентов, по 10 человек в каждой группе, сдавали в сессию по 3 экзамена. Сведения об оценках каждой группы хранятся в двумерных массивах.
Три группы студентов, по 10 человек в каждой группе, сдавали в сессию по 3 экзамена. Сведения об оценках каждой группы хранятся в двумерных массивах. Определить лучшую по средней оценке группу ???
_Camelot
Java SE (J2SE) Как можно разделить на одинаковые группы
Привет всем!!! Как можно разделить вероятности на одинаковые группы и получить кодовое слово (Звучит странно но нигде не нашел нормальную реализацию этого алгорима <Код Шеннона-Фано>)
videolord
Сетевое оборудование Как разделить скорость интернета через вай фай на три ноута пополам на Acorp w422g v3
Имею подключение 5 мегабит качает по 600 килобайт,хочу сделать так что бы все три ноута имели скорость по 200килобайт
gosha221122
Опции темы

Текущее время: 21:02. Часовой пояс GMT +4.

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.7 PL3
Copyright ©2000 - 2014, vBulletin Solutions, Inc.