système de vote

Répondre
sparh
le 21/09/2006 à 19:35
sparh
Salut,
j'essai de faire un système de vote pour les jeux sur mon site.
J'ai beaucoup réfléchis et voilà sur quoi je suis tombé.
J'ai rajouté 2 champs dans ma table jeux: note (du vote) et nombre (de votant).
L'idée c'est:
1- récupérer la note (champ note) et la multiplier par le champ nombre.
2- ajouter au résultat la note de l'utilisateur (en provenance du formulaire)
3- diviser le tout par le champ nombre+1
4- on uptdate la nouvelle note et nombre + 1

Donc voilà l'idée ;)
Là de dans le problème c'est la phase de calcul, je ne sais pas comment faire?? par contre l'uptdate ca va!
Voilà si quelqu un pouvait m'aider ;)?
Merci d'avance
sparh
le 21/09/2006 à 20:50
sparh
Bon voilà ce que j'ai fait mais ca marche pas!!
<?php
$req = "SELECT vote,nbre FROM Jeux WHERE jeux='$Jeu'"
while($resu=mysql_query($req))
{
// si le nbre = 0 alors autre calcul
if ($resu['nbre'] = [0];)
{
$calc1 = $resu['vote']
$calc2 = $calc1 + $select;
$calc3 = $calc2 / ($resu['nbre']+1);
$nbre1 = $resu['nbre']+1;
$fin = "UPDATE Jeux SET vote='$calc3',nbre='$nbre1' WHERE jeux='$Jeu'";
}
else
{
$calc1 = $resu['vote']*$resu['nbre'];
$calc2 = $calc1 + $select;
$calc3 = $calc2 / ($resu['nbre']+1);
$nbre1 = $resu['nbre']+1;
$fin = "UPDATE Jeux SET vote='$calc3',nbre='$nbre1' WHERE jeux='$Jeu'";
}
}
?>
Keika
le 22/09/2006 à 03:42
Keika
hmm c'est référent à quoi $select ?

et faut pas aussi concaténer pour une requete SQL ???

exemple:
<?php

$fin = "UPDATE Jeux SET vote='.$calc3.',nbre='.$nbre1.' WHERE jeux='.$Jeu.'";

?>
Le PHP --> C'est dur !
sparh
le 22/09/2006 à 08:31
sparh
$select c'est la valeur du vote (menu déroulant dans le formulaire de vote, il y a bien sur un peu avant le bout de code que j'ai posté:
$select = $_POST['select'];
$Jeu = $_POST['jeu'];
$pseudo = $_POST['pseudo']; //score
$date = date("Y-m-d H:i");


Sinon je vai modifier ma requête et je reviens vous voir ;)
sparh
le 22/09/2006 à 12:08
sparh
Voilà, après 3 heures de prise de tête à priori ca marche, si quelqu'un voulait bien vérifier le code?
<?php

$vote = $_POST['select'];
$Jeu = $_POST['jeu'];
$pseudo = $_POST['pseudo']; //score
$date = date("Y-m-d H:i");
$recup = mysql_query("SELECT vote,nbre FROM Jeux WHERE jeux='$Jeu'");
while ($resu=mysql_fetch_array($recup))
{
$varnbre = $resu['nbre'];
$varvote = $resu['vote'];
}
// si le nbre = 0 alors autre calcul
if ($varnbre == "0")
{
$calc1 = $varvote;
$calc2 = $calc1 + $vote;
$calc3 = $calc2 / ($varnbre + 1);
$nbre1 = $varnbre + 1;
$fin = "UPDATE `Jeux` SET vote='$calc3',nbre='$nbre1' WHERE jeux='$Jeu'";
mysql_query($fin);
}
else
{
$calc1 = $varvote * $varnbre;
$calc2 = $calc1 + $vote;
$calc3 = $calc2 / ($varnbre+1);
$nbre1 = $varnbre+1;
$fin = "UPDATE `Jeux` SET vote='$calc3',nbre='$nbre1' WHERE jeux='$Jeu'";
mysql_query($fin);
print ("$calc3 $nbre1");
}
}
?>
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours