» »

anketa z vec moznostmi

anketa z vec moznostmi

aks_! ::

Zanima me (v teoriji) kako narest anketo, ki lahko ima bodisi 3 mozne odgovore, bodisi 5, bodisi 1000 itd.

thx

OwcA ::

<select name="domace_zivali">
<option value="1">krava</option>
<option value="2">kokos</option>
<option value="42">ovca</option>
</select>
Otroška radovednost - gonilo napredka.

aks_! ::

To ze:)

Mene predvsem zanima, kako te podatke spraviti v bazo. Predvsem me zanime, kako narest tabelo za anketo oziroma ali mora vsaka anketa imeti svojo tabelo.

Seadoo ::

V eni tabeli mas ID in tekst ankete:
CREATE TABLE anketa (
id int(11) NOT NULL auto_increment,
text varchar(1000) NOT NULL default '',
PRIMARY KEY (id)
)

v drugi pa ID vprasanja, številko vprašanja znotraj ankete, ID ankete in tekst vprašanja:

CREATE TABLE vprasanja (
id int(11) NOT NULL auto_increment,
zap_st int(11) NOT NULL default '0'
anketa_id int(11) NOT NULL default '0',
text varchar(100) NOT NULL default '',
PRIMARY KEY (id)
);

Pol pa je še vprašanje, kako hranit odgovore na vprašanja. Lahko dodaš še en stolpec v tabelo z vprašanji, recimo:
st int(11) NOT NULL default '0'
kjer hraniš število odgovorov.

Jaz mam tako narejeno, pol mam pa še eno tabelo
CREATE TABLE ip (
ip varchar(15) NOT NULL default ''
);
kjer hranim kateri IP je že glasoval, tako da ne more še enkrat. Saj vem, da se lahko odklopi in priklopi z drugim IPjem, ampak če se hoče zajebavat, naj se. Lahko tudi z cookiem preverjaš, ampak te lahko tudi izklopi, tako da je pol še slabše. No ampak to presega vprašanje, ki si ga postavil.

aks_! ::

thx za info.

sej sem že začel delati na anketi in v bistvu sem naredil 3 tabele, in sicer sta v prvi tabeli id ankete in vprašanje, v drugi so id odgovora, odgovori, št. glasov, id ankete (zato, da lahko ugotovim, kateri odgovor pripada kateri anketi) in še datum nastanka ankete in datum, ko se anketa izteče (kateri ni nujno, da je vključen). Potem pa je tu še 3. tabela v kateri pa so nastavitve (barve, pisava, jezik, itd).

Seadoo: dobro, da si omenil še tabelo za zapis ip-ja, sam niti pomislil nisem nanjo. tko da sem se odločil uporabiti kombinacijo zapisa ip-ja s cookiji.

Seadoo ::

Hmm... zakaj imaš datum nastanka ankete in datum, ko se anketa izteče shranjeno v tabeli z odgovori? To jasno spada v prvo tabelo, ker je v prvi tabeli shranjena anketa.

aks_! ::

Zgleda, da sem se zgoraj zatipkal. Oba datuma imam v tabeli, v kateri so podatki o anketi.

btw: kako pa dobiš ip anketiranca?

Zgodovina sprememb…

  • spremenil: aks_! ()

Trubadur ::

$_SERVER['REMOTE_ADDR']
Berite Thomasa!

aks_! ::

Sam še eno dilemo imam.
Predpostavimo, da shranim ip vsakega, ki odgovori na anketo. No, pa predpostavimo še, da obišče mojo stran Janez in ob 16.55 odda glas na anketi in se nato odklopi. Čez pol ure pa zamika še Jureta, pride na mojo stran in želi odgovoriti na anketo, ampak mu skripta tega ne dovoli, saj ima Jure na nesrečo dodeljen ravno prejšnji Janezov ip.

Je to možno?

Trubadur ::

kompliciraš:D :\
sej lahk tut s cookiji delaš pa bo jure zihr meu šanso glasovat:D :D
Berite Thomasa!

Seadoo ::

Ja ta drugi žal ne bo mogu glasovat. Naj se odlklopi pa pride gor z drugim IP-jem :D

Cookiji so problem, ker ti lahko nekdo, ki jih ne sprejema (recimo jaz), zafila anketo s tisoč in tisoč odgovori.

Trubadur ::

jah pa oboje uporabš:)) :D
Berite Thomasa!

Packač ::

Jst sm mev narjen da sm beležu IP od vsasga uporabnika pa še cookie sm mu nastavu. Glede ankete z več odgovori preprosto narediš while zanko z ustreznimi vpisi v bazi in potem lahko enostavno anketo štimaš preko obrazcev.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

mysql vnos

Oddelek: Izdelava spletišč
51548 (1513) asgard2.0
»

portal ostal, baza sla

Oddelek: Izdelava spletišč
61828 (1713) bombacina
»

SQL problem

Oddelek: Programiranje
91520 (1357) Bossek
»

mySQL(+php) auto_increment field v tabeli.. Kako...?

Oddelek: Izdelava spletišč
61104 (1036) Zzzzzzz
»

MySQL združevanje tabel..

Oddelek: Programiranje
191711 (1526) Nemenej

Več podobnih tem