Stem Script

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Peter O

Peter O

29/03/2007 18:00:00
Quote Anchor link
Hey,

Ik ben al een tijdje bezig met het maken van een site (een database met films, waar users op kunnen stemmen enz).

Maar ik kom er niet uit hoe ik het beste de stemmen in de database kan opslaan.

Hier is een voorbeeld van de situatie (fictief).

Titels in de database 100.
User1 heeft op 50 titels gestemd (met een willekeurig cijfer tussen de 1 en 10).
User2 heeft op 75 titels gestemd (met een willekeurig cijfer tussen de 1 en 10).
enz.

bvd.

-peter
 
PHP hulp

PHP hulp

16/11/2024 18:55:33
 
Joren de Wit

Joren de Wit

29/03/2007 18:05:00
Quote Anchor link
Inventariseren welke gegevens je allemaal hebt, vervolgens gaan normaliseren en een datamodel opzetten. Zie ook verschillende tutorials over het normaliseren van een database.

Om alvast een opzetje te geven: allereerst heb je de gebruiker. Je hebt dus een tabel nodig waarin je zijn gegeven op kunt slaan. Vervolgens moet een gebruiker kunnen stemmen op meerdere films en moet er door meerdere gebruikers op een film gestemd kunnen worden. De volgende tabel die je nodig hebt is dus een tabel waarin je de films kunt opslaan. En de laatste tabel in dit geval is een tabel waarin je de stemmen (met bijvoorbeeld commentaar) opslaat. Dus in schema:

users
------
id
naam

film
-----
id
titel

votes
-------
id
user_id
film_id
vote

Vervolgens kun je met SELECT queries verschillende gegevens uit de database halen.
 
Peter O

Peter O

29/03/2007 18:09:00
Quote Anchor link
Ok dus in de tabel votes moet er voor elke user+stem een nieuwe row worden gemaakt?

hm ja als ik er zo over nadenk is het eigenlijk best simpel.. :-)

bedankt voor de hulp.

met vriendelijke groet,

Peter
 
Joren de Wit

Joren de Wit

29/03/2007 18:14:00
Quote Anchor link
Dat is verreweg het makkelijkste. Je kunt daarna met functie als bijvoorbeeld AVG() en COUNT() zeer eenvoudig respectievelijk het gemiddelde en het totaal aantal stemmen uitrekenen.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.