Aller au contenu

systeme de vote en PHP


Sujets conseillés

Posté

Bonjour à tous,

J'aimerais savoir comment est il possible de faire est système de vote du type de http://www.viedemerde.fr/ ?

En fait sur chaque commentaire que l'internaute aura posté et que je fais afficher grâce à une boucle php (while) je voudrais que les autres internautes puissent choisir entre :

ton voyage était génial (nombre de vote) -- Ton voyage était nul (nombre de vote)

Alors je sais que ça ressemble à du plagia mais je trouve ce système de vote franchement bien.

merci d'avance

Posté

Bonjour !

C'est plutot un topsites que vous cherchez car ce n'est pas un sondage si vous voyez ce que je veux dire ?

Cherchez un script "Top" ou "Topsites"

Cordialement !

Posté

Merci de votre réponse.

Cependant j'ai du mal m'expliquer car je ne veux pas du tout un topsite. Je veux un vrai système de vote. L'url que j'ai donné est un site sur lequel on trouve le système de vote que j'aimerais "recopier".

Posté

Bonjour,

j'essaie de faire un système de vote (sur article) avec deux choix possibles : bien ou pas bien.

J'ai fait une table avec les champs suivant :

id, id de l'article, bien, pas_bien.

L'internaute coche bien ou pas bien et sa réponse est enregistrée dans la table. Mais chaque vote crée une nouvelle ligne. Ce qui n'est pas pratique. Moi je voudrais que chaque article n'occupe qu'une seule ligne dans la table.

Ma question est comment faire en sorte que les champs "bien" ou "pas bien" augmente de 1 par rapport à l'id de l'article ?

Merci d'avance.

Posté

Bonsoir,

personnellement je te recommande d'insérer une ligne par vote (pour des raisons de fiabilité/sécurité en fait) mais c'est vrai qu'une ligne par article c'est plus simple.

Pour le vote tu devrais donc avoir une table comme celle-ci :

id,votebien,votepasbien (en admettant que le champ id de cette table correspondra au champ id de la table des articles)

Pour modifier les colonnes votebien et votepasbien tu peux récupérer leur valeur avec une requête SQL avant modification de la table, et plus précisémment de la ligne qui concerne l'article selectionné :

$recherche_votes = mysql_query("SELECT votebien,votepasbien FROM table_votes WHERE id='id_article'");
$info_votes = mysql_fetch_array($recherche_votes);

if($_POST['vote'] == "votebien")
{ // modification du nombre de votebien
$votes_bien = $info_votes['votebien']++;
// insertion
mysql_query("UPDATE table_votes SET votebien='$votes_bien' WHERE id='id_article'");
}

if($_POST['vote'] == "votepasbien")
{ // modification du nombre de votepasbien
$votes_pasbien = $info_votes['votepasbien']++;
// insertion
mysql_query("UPDATE table_votes SET votepasbien='$votes_pasbien' WHERE id='id_article'");
}

Le code n'est pas parfait mais j'espère que tu en auras compris le principe.

Posté

Bonjour,

A noter qu'il est possible d'appeler un champ directement en sql pour l'incrémenter. Ca donne ca :

 mysql_query("UPDATE table_votes SET votebien=votebien+1 WHERE id='id_article'");

et qui a le net avantage de ne pas avoir à passer par php :)

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...