système de vote
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
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'";
}
}
?>
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 !
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 ;)
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");
}
}
?>
Ecrire un message
Votre message vient d'être créé avec succès.
BB-Code
Pour insérer une URL clickable
Pour insérer une adresse E-mail
Pour annoter
Pour écrire du code
Pour faire un lien vers une fonction PHP
Pour écrire du texte préformaté
Pour écrire du texte en gras
Pour écrire du texte en italique
Pour écrire du texte souligné
Pour écrire du texte barré
Pour écrire un titre principal
Pour écrire un titre secondaire
Pour écrire une liste
Smiley
:bond:
:boxe:
:bsmile:
:bump:
:clap:
:coeur:
:cool:
:cry:
:eek:
:evil:
:fleur:
:fou2:
:fou:
:grin:
:grrr:
:hammer:
:hippy:
:hum:
:idee2:
:idee:
:kdo:
:king:
:ko:
:lol:
:love2:
:love:
:mad:
:maitre:
:noel:
:oops:
:raa:
:razz:
:roll:
:sad:
:skull:
:smile:
:timide:
:trink:
:vice:
:vomi:
:wink:
:zzz: