[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Распределение званий
blade
Вообщем вопрос к знатокам.
Как сделать систему которая будет случайным образом присваивать звание пользователю после того как он нажмет кнопку(звания берутся и списка), да чтоб 1 пользователь смог нажать только 1 раз.

ТЗ:
Имеется список например из 10 званий на сайте 10 пользователей, первый пользователь жмет кнопку ему случайным образом достается звание, второй пользователь при нажатии на кнопку тоже получает звание случайным образом только из списка 9 званий т.е уже без того звания которое у первого



Спустя 6 минут, 45 секунд (8.04.2010 - 11:49) ИНСИ написал(а):
blade какие у тебя мысли? то есть что ты сделал? Совет тебе: Если ты хочешь, чтобы тебе помогли, в начале сам что-то сделай, а тебе тут потом помогут.

Получается ты просишь, просто написать за тебя скрипт. Дай свой пример и тебе помогут smile.gif

Спустя 3 минуты, 14 секунд (8.04.2010 - 11:53) blade написал(а):
В том то и дело незнаю как все оформить. Я так думаю чтоб звания брались случайно нужне рандом а как потом из списка вычесть выбраное уже незнаю как сделать

Спустя 33 минуты, 46 секунд (8.04.2010 - 12:26) ИНСИ написал(а):
вытащить не проблема, важно то, где ты будешь хранить потом данные, то есть у кого, какая должность. Вот скрипт, который вытащит 1 должность.

// список должностей
$doljnost = array(
'Юрист',
'Программист',
'Сантехник',
'Менеджер',
'Администратор',
'Продавец',
'Бездельник',
'Певец',
'Актер',
'Юморист',
);


$randDoljnost = array_rand($doljnost,1); // вытаскиваем 1 должность

Спустя 37 минут, 28 секунд (8.04.2010 - 13:04) blade написал(а):
Ну у меня такая задумка хранить должности в БД и в array('...'); использовать должности в которых поля кто пустые т.е после того как нажмет первый допустим он будет бездельник)) в БД внесется его ник потом уже array('тут'); будут только те звания в которых нет имени.
Такое реально сделать?

Спустя 1 час, 7 минут, 7 секунд (8.04.2010 - 14:11) ИНСИ написал(а):
blade почти не понял тебя, но вот для примера сделал:
if($_POST['getDoljnost']) { // если была нажата кнопка

if(preg_match("|^[a-z0-9_\.-]+@([a-z0-9]+\.)+[a-z]{2,4}$|i", $_POST['email'])) { // проверяем на "валидность" введеного Email

// проверяем, есть ли пользователь с Email-ом из формы

$result = mysql_query("
SELECT *
FROM `users`
WHERE `email` = '
{$_POST['email']}'
"
);

// если есть, идем дальше
if(mysql_num_rows($result) > 0) {
$row = mysql_fetch_assoc($result); // помещаем все данные, которые хранятся в БД

if($row['doljnost'] == '') { // если у пользователя нет должности, идем дальше

// вытаскиваем с таблицы `doljnostTable` 1 должность, случайным порядком

$resultDoljnost = mysql_query("
SELECT *
FROM `doljnostTable`
ORDER BY RAND()
LIMIT 1
"
);

$getRandomDoljnost = mysql_fetch_assoc($resultDoljnost); // помещаем данные должности в переменную

// заносим в БД должность пользователя

mysql_query("
UPDATE `users`
SET `doljnost` = '
{$getRandomDoljnost['title']}'
WHERE `email` = '
{$_POST['email']}'
"
);

// удаляем должность с таблицы `doljnostTable`, чтобы больше никому не присвоилась эта должность
mysql_query("
DELETE
FROM `doljnostTable`
WHERE `id` = '
{$getRandomDoljnost['id']}'
"
);

echo 'Теперь у вас должность: ' . $getRandomDoljnost['title']; // выводим сообщение

} else { // если у пользователя уже есть должность
echo 'У вас уже есть должность: ' . $row['doljnost'];
}
}
else { // если нет пользователя в БД
echo 'В базе нет пользователя с таким email';
}
}
else { // если прислали неверный email
echo 'Вы ввели неверный формат email';
}
}

Спустя 16 минут, 59 секунд (8.04.2010 - 14:28) blade написал(а):
спасибо буду пробовать

Спустя 1 час, 57 минут, 9 секунд (8.04.2010 - 16:25) blade написал(а):
(( почему то у меня посстоянно

Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in F:\home\fifadnet.ru\www\index.php on line 11

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in F:\home\fifadnet.ru\www\index.php on line 11

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in F:\home\fifadnet.ru\www\index.php on line 14
В базе нет пользователя с таким email

Спустя 5 минут, 43 секунды (8.04.2010 - 16:31) DedMorozzz написал(а):
=) ну так те пишут в чём проблема. С паролем не угадал. Кажись вообще его нету, а ты таки пишешь его.

Спустя 7 минут, 56 секунд (8.04.2010 - 16:39) blade написал(а):
я в пхп не очень какого пароля?

Спустя 1 минута, 42 секунды (8.04.2010 - 16:40) ИНСИ написал(а):
blade скрипт не может подключиться к базе данных (Mysql)

Спустя 19 секунд (8.04.2010 - 16:41) blade написал(а):
а все разобрался спасибо

Спустя 1 минута, 23 секунды (8.04.2010 - 16:42) blade написал(а):
welbox2 огромное спасибо все работает с меня причитается))
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.