създаване на проста анкета

stoqnski

Registered
Здравейте , искам да създавам динамични анкети , от прост тип ( само с два отговора Да и НЕ ) пример:
//SQL
order by anketi.id DESC LIMIT 1
echo ..
Харесвате ли сайта?
Да - Не

Добавянето на анкети и отговорите като идея ми е следната :
Въпрос: <input type="text" name="vapros"... />
<input type="submit" />

и веднага ми става запис в БД с
id - 1
vapros (varchar 255) - $_POST[vapros]

така сега трябва да измисля отговорите имам идея с броят на отговорите :

при click на някой от отговорите да ъпдейтва и set-ва на съответния отговор +1 т.е.
$row[otgovor1] + 1;
до тук добре , мисля че ще стане , но имате ли нещо по креативно от моето аматьорско решение ?
Тези анкети ще ми служат единствено на мен (администратора на страницата ми ) , а отговорите ще са COUT(полето) и сравнявания , които ще излизат само в админ панела ми )
 
Е дали при клик,дали при кликане на бутон както прецениш.
Но като цяло освен да сложиш някакви ограничение за ип/потребители които да гласуват мисля, че другото е добре. :)
 
Hous каза:
Е дали при клик,дали при кликане на бутон както прецениш.
Но като цяло освен да сложиш някакви ограничение за ип/потребители които да гласуват мисля, че другото е добре. :)

аз обаче се обърках в алгоритъма някъде :D
имам таблица anketi и в нея полета
-aid - някакъв уникален ключ , който сигурно ще потрябва за нещо
-vapros - въпроса за анкетата
-otgovor1 - отговор 1 - по дефаут ще е "ДА"
-otgovor2 - отговор 2 - по дефаут ще е "НЕ"
-broqchzaotgovor1 - в това поле ще се съхраняват UPDATE broqchzaotgovor1 = $row[broqchzaotgovor1] + 1
-broqchzaotgovor2 - -broqchzaotgovor2 - в това поле ще се съхраняват UPDATE broqchzaotgovor2 = $row[broqchzaotgovor2] + 1

При добавяне на анкета се справих , като broqchzaotgovor1 и 2 седят нули , защото ми трябват за отчитането на кликовете само . При изкарването и отчитането вече става пълна лудница и ми гръмна главата . Знам , че ако го направя с 2 , 3 таблици - една за въпроси , една за отговори , една за гласували (за IP-та) ще имам там разни JOIN-нове и ще стане работата , но не искам да товаря още сайта ,защото се очаква много трафик :(

Като цяло това , което искам да постигна е :
Изкажете си мнението за сайта :
инпут поле и субмит бутон
(но да е с БД)
или да питам някакви въпроси от типа "Допада ли ви сайта?" и съоветно отговори само с Да и Не
 
Много по-лесно и ефикасно е да имаш добре разпределена информация в 2 таблици със join примерно , от колкото да имаш записи в една таблица от вида
id | asnwers
1 | 1,2,3,4,5,5,5,5,5,4,1,2

А пък и един join освен ако нямаш 1203912312 записа , никакъв проблем няма да е за сървъра!
Все пак може и да греша но съм на 90% сигурен за да го кажа това.
 
Друг вариант според мен е примерн,две таблици (1 за ип-та/потребители които са гласивали) и другата за отговорите.
Vypros | otgovor 1| otgovor 2
Харесва ли ви сайта | 1 | 14
при всяко гласуване правиш проверка за ip/user в таблицата, и после просто добавяш +1 за съответния отговор , тоест ако както е така ^ и аз ласувам за отговор 1 ще стане
//check user id/ip
...
//we are good store the answer into db
...
харесва ли ви сайта | 2 |14


:)
 

Back
Горе