Avatar billede Slettet bruger
14. oktober 2004 - 01:02 Der er 10 kommentarer og
2 løsninger

Registrere en masse stemmer..

Jeg kune ikke lige finde på en sigende overskrift. Beklager.

Jeg er ved at lave et site hvor der bla. er en masse billeder som der kan stemmes på, med rating fra 1-5. Det virker fint og hele, men det er ikke det spmet går ud på....

Jeg kunne tænke mig at vide hvordan jeg, på en smart måde, kan kan registre hvilke brugere der har stemt på hvilke billeder. (skal bla bruges til at man kun må stemme én gang, og at andre skal kunne se hvad de forskellige brugere har stemt på..)
Der er MANGE billeder, så jeg ved ikke liiige hvordan jeg skal kringle dén...

Det hele foregår med MySQL og PHP selvf.....

Håber nogen kan hjælpe

- GartZen
Avatar billede a1a1 Novice
14. oktober 2004 - 01:13 #1
gem id på billede , id på bruger cookie; i en anden tabel når der bliver klikket

;o)
Avatar billede Slettet bruger
14. oktober 2004 - 01:19 #2
så en tabel:

bruger | pic1 | pic2 |  picn |.........| pic4500 |
-------+------+------+-------+---------+---------+
gartzen|  1  |  0  |.................|  1    |
Avatar billede a1a1 Novice
14. oktober 2004 - 01:25 #3
..nej....:o)

Du har en tabel til billeder:
(tbl_picture) ID, billedenavn

En til brugere:
(tbl_user) ID, brugernavn

En til stemmer:
(tbx_userpicture), fk_userID, fk_pictureID (fk_userID = tbl_user.ID, fk_pictureID = tbl_picture.ID)
Avatar billede a1a1 Novice
14. oktober 2004 - 01:26 #4
Du kan jo så checke om brugeren har stemt eller ej også
Avatar billede Slettet bruger
14. oktober 2004 - 01:30 #5
hmm.. gad vide om jeg er med ;o)

-----------------
|brugere | pics  |
-----------------
gartzen | pic1
gartzen | pic 2
Avatar billede a1a1 Novice
14. oktober 2004 - 01:36 #6
hvordan ser din database ud nu?
Avatar billede Slettet bruger
14. oktober 2004 - 01:40 #7
tabel med billede data:
| id | sti | rating | antal stemmer |

tabel med brugere:
| brugernav | pass |
Avatar billede a1a1 Novice
14. oktober 2004 - 01:53 #8
man kan give hvert billede en karakter fra 1-5?
man kan kun stemme en gang, på hver billede?

Korrekt?

så skal du lave en ekstra tabel til at tælle op i
f.eks. (tbx_userpicture), fk_userID, fk_pictureID, iRating (fk_userID = tbl_user.ID, fk_pictureID = tbl_picture.ID)

på dansk:
en tabel der f.eks. hedder:
tbx_brugerbillede
I den er der 3 felter
fk_brugerID (ID på bruger)
fk_billedeID (ID på billede)
iRating = det tal der er valgt

Når der bliver stemt checker du så om brugeren allerede har stemt eller ej

;o)
Avatar billede Slettet bruger
14. oktober 2004 - 01:55 #9
undskyld jeg ikke forstår noget ;) klokken er jo 2!
men jeg har det nu.. det var egentlig også sådan jeg regnede med at gøre, men det kunne jo godt være der var en fiks lille måde hvor man ikke fin en tabel med en miliard rækker.. Jeg har ikke så meget erfaring endnu ;)
tak for hjælpen, du får dine point ...
Avatar billede a1a1 Novice
14. oktober 2004 - 02:57 #10
man kunne jo også, lave 2 ekstra felter i billede tabellen; score og antalstemmer (score/antalstemmer=resultat), men så kan der også stemmes flere gange ;o)

tak for points..;o)
Avatar billede a1a1 Novice
14. oktober 2004 - 02:59 #11
PS: det er den "rigtige" måde at gøre det på (den med 3 tabeller)
Avatar billede Slettet bruger
14. oktober 2004 - 14:50 #12
Den måde a1 nævner 01:53:00 var også den, jeg ville vælge. Den har yderligere den fordel, at man kan godt tillade folk at stemme mere en en gang, får så laver de bare deres tidligere stemme om. Lidt lige som Karma her på E.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester