Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Система выборов

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Bekhruz
Отправлено: 28 Мая, 2016 - 12:50:26
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Май 2016  


Помог: 0 раз(а)




Друзья, я не могу разобраться.
Как избежать повторного голосования от одного и того же лица.

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

Как сделать так, чтобы к примеру если пользователь имеет на банковском счету больше или ровно 10 млн к примеру, то он может зарегистрировать кандидатуру на выборах???
 
 Top
igosja
Отправлено: 29 Мая, 2016 - 11:00:40
Post Id



Гость


Покинул форум
Сообщений всего: 77
Дата рег-ции: Март 2013  
Откуда: https://vhol.org


Помог: 3 раз(а)




"Как сделать так, чтобы выборы (голосование) проводилось через опеределенный промежуток времени, к примеру через каждый месяц."
Тут все предельно просто - раз в месяц через crontab добавляйте новый id в табличку с голосованиями.
CODE (text):
скопировать код в буфер обмена
  1. INSERT INTO `vote`
  2. SET `vote_id`=NULL

"Как избежать повторного голосования от одного и того же лица."
Нужно записывать в базу данных историю голосований с id голосовавшего, любые другие вещи, в духе cookie, ip и прочее, можно обойти.
Хочет человек проголосовать, проверяете:
CODE (text):
скопировать код в буфер обмена
  1. SELECT COUNT(`id`) AS `check`
  2. FROM `uservote`
  3. WHERE `user_id`='$user_id'
  4. AND `vote_id`='$vote_id'
А потом
CODE (text):
скопировать код в буфер обмена
  1. if (0 == $check) {
  2.     //Человек голосует и мы его записываем
  3.     $sql = "INSERT INTO `uservote`
  4.             SET `user_id`='$user_id',
  5.                 `vote_id`='$vote_id'
  6. } else {
  7.     //Выводим заглушку, мол, вы уже проголосали
  8. }


"Как сделать так, чтобы к примеру если пользователь имеет на банковском счету больше или ровно 10 млн к примеру, то он может зарегистрировать кандидатуру на выборах???"
По аналогии с предыдущим примером. Нужно делать проверку
CODE (text):
скопировать код в буфер обмена
  1. SELECT `balance`
  2. FROM `user`
  3. WHERE `id`='$user_id'
  4. LIMIT 1
Далее проверка
CODE (text):
скопировать код в буфер обмена
  1. if (10000000 < $balance) {
  2.     //Человек выдвигает свою кандидатуру
  3. } else {
  4.     //Выводим заглушку, мол, мало денег
  5. }
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


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



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB