Mon site affiche dynamiquement des questions qui sont stockées dans ma base de données. J'ai fait un système de vote pour augmenter ou diminuer la note attribué à chaque question. Le code est le suivant :
$reponse = mysql_query('SELECT * FROM questions ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);
while ($donnee6 = mysql_fetch_array($reponse))
{$nombre_reponse = mysql_query('SELECT COUNT(*) AS nb_reponses FROM reponses WHERE id_question ="'.$donnee6['id'].'"');
$donneess = mysql_fetch_array($nombre_reponse);
$totalDesReps = $donneess['nb_reponses'];
$aleatoire = mysql_query('SELECT * FROM reponses WHERE id_question="'. $donnee6['id'].'" ORDER BY RAND() LIMIT 1');
$donneealeatoire = mysql_fetch_array($aleatoire);
if ($donneealeatoire != NULL){ echo ' <div id="question"><p class="info">' . $donnee6['contenu'] . '<span><u>Réponse au hasard</u> : '.$donneealeatoire['contenu'].' </span></p>
<a class="pdv" href="reponses.php?page='.$donnee6['id'].'"><b>PQ n°'.$donnee6['id'].'</b> | Voir toutes les réponses (<b>' . $totalDesReps . '</b>)</a>'; }
elseif ($donneealeatoire == NULL){
echo ' <div id="question"><p class="info">' . $donnee6['contenu'] . '</p>
<a class="pdv" href="reponses.php?page='.$donnee6['id'].'"><b>PQ n°'.$donnee6['id'].'</b> | Proposer une réponse</a>';}
echo'<form method="post" action="http://pulpquestion.org/index.php?page=' . $page . '#v">
<p id="v" class="note"><input type="image" name="pouceenhaut" value="génial" src="etoile3.png" /><span>Pouce en l\'air !</span></p>
<p id="v" class="note"><input type="image" name="bien" value="bien" src="etoile3.png" /><span>Pas mal...</span></p>
<p id="v" class="note"><input type="image" name="bof" value="bof" src="etoile3.png" /><span>Mouais.</span></p>
<p id="v" class="note"><input type="image" name="pouceenbas" value="naze" src="etoile3.png" /><span>Pouce en bas !</span></p>
<div id="vide" style="clear: both;"> </div></div><br /><br /></form>';
if (isset($_POST['pouceenbas'])){mysql_query('UPDATE questions SET note = note - 1 WHERE id = ' . $donnee6['id'] . '');}
elseif (isset($_POST['bof'])){mysql_query('UPDATE questions SET note = note + 0 WHERE id = ' . $donnee6['id'] . '');}
elseif (isset($_POST['bien'])){mysql_query('UPDATE questions SET note = note + 2 WHERE id = ' . $donnee6['id'] . '');}
elseif (isset($_POST['pouceenhaut'])){
mysql_query('UPDATE questions SET note = note + 3 WHERE id = ' . $donnee6['id'] . '');}
else{mysql_query('UPDATE questions SET note = note + 0 WHERE id = ' . $donnees6['id'] . '');}
}
J'affiche 5 questions par page et le problème et le suivant : Lorsqu'on vote, ce sont les notes de toutes les questions de la page qui changent... Quelqu'un aurait-il une idée ?