0 / 0 / 0
Регистрация: 28.04.2011
Сообщений: 16
1

Создание глобального голосования для сайта.

30.04.2011, 18:59. Показов 1084. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте. Я в ПХП можно сказать 'продвинутый юзер' Примитивные вещи делать могу, да и не только примитивные.
Сейчас занимаюсь разработкой сайта, и у меня возникла небольшая проблема:

на сайте будет много статей (хранящихся в MySql) и файлов (данные про файлы тоже в БД).
У каждой статьи и у каждого файла есть свой ID.
И что я хочу сделать - под каждым файломстатьёй вывести голосование за файлстатью. Голосование примерно такого вида:
Слева в табличке 10 ссылок, вида
vote.php?act=files&code=security&m=vote&id=296&v=1
где:
act=files - тип материала за который отдается голос. В данном случае это софт.
code=security - категория файластатьи
m=vote - голосуем, отдаём голос
id=296 - айди файла, за который отдается голос. Айди береться из самой статьи, из базы данных данной статьефайла (это не проблема сделать).
v=1 - оценка. От 1 до 10.

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

ПО поводу возможности накрутки - тут тоже все легко -голосовать будет разрешено только зарегистрированным пользователям, за каждую статьюфайл ТОЛЬКО по одному разу.

У меня же проблема в другом - как реализвать уже само голосование?
файл vote.php я привел для примера, так как его уменя сейчас нету.
Поэтому и пишу здесь - прошу Вашей помощисоветов по созданию файла для проведения голосования. ЕДинственное - доступ к самому файлу vote.php напрямую закрою. тоестьн икакого интерфейса для него делать не нужно.
Хотелось бы услышать совет, как лучше сформировать таблицу в БД для этого модуля голосований. Я представляю примерно так:
vote_act - тут будет вписываться ТИП метериала за который отдали голос (например files или games(стати про игры))
vote_code - тут будет храниться подкатегория материала (например security для файлов или action(тип игры) для статей про игры)
vote_id - ID файла за который отдали голос
vote_mark_1 - сюда будет добавлять по 1 кол-во голосов, за 1 балл (запрос MySql что-т вроде $db->sql_query('UPDATE site_vote SET vote_mark_1=vote_mark_1+1');
vote_mark_2 - то же самое только для 2 баллов
vote_mark_3 - то же самое
vote_mark_4 - то же самое
vote_mark_5 - то же самое
vote_mark_6 - то же самое
vote_mark_7 - то же самое
vote_mark_8 - то же самое
vote_mark_9 - то же самое
vote_mark_10 - то же самое
vote_voted - тут будут храниться имена проголосовавших пользователей.

Вот примерно. Хотя я сам никогда ещё ничего подобного не делал. Наверное я неправильно все-таки представляю себе работу будущего скрипта. Очень надеюсь на Вашу помщь.
С Уважением. Сергей.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.04.2011, 18:59
Ответы с готовыми решениями:

Создание своего супер-глобального массива
Доброго времени суток. В силу разных обстоятельств меня постигла следующая цель: Создание своего...

Отобразить результаты голосования сразу после голосования
Почему после нажатия кнопки, отображается результат голосования по нулям, а при повторном нажатии...

Создание простого голосования, совсем не получается
Не так давно начал изучать пхп, есть прогресс, но столкнулся с трудностью.:( Хочу сделать обычное...

Создание сайта для практики
Ребят, подскажите, на какую тему можно сделать сайт, чтобы максимально затронуть js и php?) для...

2
0 / 0 / 0
Регистрация: 28.04.2011
Сообщений: 16
30.04.2011, 19:05  [ТС] 2
Хотелось бы совета или примера того, как должен выглядетья файл vote.php, и как правильно создавать запросы на дбавление голоса, вывода результатов голосования.
Кстате про вывод результатов - результаты выводяться непосредственно справаслева от кнопочек 'отдать голос'.
Выводить нужно только общую оценку высчитанную в процентах. Ну например 1 голос за 10 баллов это 100%
И под оценкож было бы неплохо общее кол-во голосов.
0
0 / 0 / 0
Регистрация: 28.04.2011
Сообщений: 16
30.04.2011, 20:09  [ТС] 3
Вот смотрите, по идее ид по ссылке
vote.php?go=vote&vote_act=test&vote_code=ttset2&vote_id=1&vote_mark=6
нужно что бы выполнялся код (ниже). Подправьте пожалуйста, скажите что я там не так сделал
Код
<?php

function vote($vote_act, $vote_code, $vote_id, $vote_mark) {
   global $prefix, $db, $vote_act, $vote_code, $vote_id, $vote_mark;
   $vote_act = '$vote_act';
   $vote_code = '$vote_code';
   $vote_id = '$vote_id';
   $vote_mark = '$vote_mark';
   $db->sql_query('INSERT INTO '.$prefix.'_vote (vote_act, vote_code, vote_id, vote_mark) VALUES ('$vote_act', '$vote_code', '$vote_id', '$vote_mark')');
   Header('Location: index.php');
}

switch($go) {

    case 'vote':
    vote($vote_act, $vote_code, $vote_id, $vote_mark);
    break;

    default:
    vote();
    break;

}

?>
0
30.04.2011, 20:09
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.04.2011, 20:09
Помогаю со студенческими работами здесь

Создание online консультанта для сайта
Добрый день, друзья, загорелся желанием реализовать online консультанта на сайте, чат между...

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

Создание сайта для прослушивания и загрузки музыки
Значит так. Мне нужно создать сайт, на котором можно: - прослушать музыку; - скачать музыку; В...

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru