Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3739 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  pbm pour le rating

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

pbm pour le rating

n°267035
Profil sup​primé
Posté le 11-12-2002 à 12:50:31  answer
 

Voila je desire faire un rating grace a un champ 'rate' dans ma db.
cependant je ne voit pas trop comment je pourrait faire.
imaginons que sur une echelle de 0 a 5 les vote soit comme cela :
 
2-4-0
 
Si je fait d'abord la moyenne des 2 premier j'ai 3 et ensuite je reprend la valeure 3 et faire la moyenne avec 0 ca m fait 1.5!
 
or la veritable moyenne doit etre de 2.
 
Voila donc le probleme je ne voit aps tro comment faire un rating (pas techniquement, mais je ne voit pas comment :) )
 
Si qquna  une idée, je suis prenenur :)


Message édité par Profil supprimé le 11-12-2002 à 14:17:16
mood
Publicité
Posté le 11-12-2002 à 12:50:31  profilanswer
 

n°267040
e_esprit
Posté le 11-12-2002 à 12:57:44  profilanswer
 

pourquoi tu prends les deux premiers, puis le troisieme apres ???
Comprends pas bien ton probleme ...  :??:


---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
n°267041
fastclemmy
(re-)Dictateur en plastique
Posté le 11-12-2002 à 12:59:06  profilanswer
 

Faut stocker tous tes votes pour pouvoir avec chaque nouveau vote l'ajouter à tous les autres avant de faire ta moyenne, non  :??:

n°267042
e_esprit
Posté le 11-12-2002 à 13:04:25  profilanswer
 

Ah OK... j'ai compris...
Bah alors la soluce c'est de stocker le nombre de vote correspondant a la moyenne conservée.
Pour ton exemple c'est deux :
3*2+0 = 6
la nouvelle moyenne est donc :
6/(2+1) = 2 le compte est bon. Et tu as maintenant moy=2, nb=3.
Si quelqu'un vote 3 :
2*3+3=9
et :
9/(3+1) = 9/4 = 2.25
avec 2-4-0-3
 
T'as saisi mon explication ?


---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
n°267045
Profil sup​primé
Posté le 11-12-2002 à 13:07:37  answer
 

:jap: ok mmerci jvouyait pas le truc sous cette angle :)

n°267072
Profil sup​primé
Posté le 11-12-2002 à 13:58:57  answer
 

Je comprend pas du tout.
mon script ne marche pas pourtant tout semble correct :/
 

require("connect.php" );
session_register("pseudo" );
$connect=mysql_connect(SERVEUR, NOM, PASSE);
mysql_select_db(BASE, $connect);
//le nbr de votants
$requete="SELECT vote FROM forum WHERE comment='$comment'";
$query=mysql_query($requete);
//la note
$requete2="SELECT rate FROM forum WHERE comment='$comment'";
$query2=mysql_query($requete2);
 
//calcul
$new=$rate*$vote+$number;
$newrate=$new/($vote+1);
$newvotant=$vote++;
$requete3="UPDATE forum SET rate='$newrate' AND vote='$newvotant' WHERE comment='$comment'";
$query3=mysql_query($requete3);


 
ce script est provoque par la page :
 

 echo '<td bgcolor="#E8E8E8" align=right style="width:350px;">
  <center>';
  echo '<font color=red>Commentary</font><p>';
  echo $comment;
  echo '<p><font color=red>Rate this site</font><p>';
  echo '<form method=post action="rate.php">';
  echo '<select name="number">';
  echo'<option>0</option><option>1</option><option>2</option><option>3</option><option>4</option><option>5</option></select>';
  echo '<input type=submit nom="submit" value="vote">';
  echo '</form>';
  echo '</td>';
  include("bas.php" );


 
vous voyez ce qui v apas?

n°267093
six_dfx
Well I'm the Lord of Time.
Posté le 11-12-2002 à 14:19:21  profilanswer
 

insert un enreg dans ta table de votes pour chaque personne qui vote.
 
ensuite un simple "select avg(rating) from vote_table" te donnera la moyenne


---------------
Don't blink. Don't even blink. Blink and you're dead. They are fast, faster than you could believe, don't turn your back, don't look away, and DON'T BLINK. Good luck.
n°267105
Profil sup​primé
Posté le 11-12-2002 à 14:23:59  answer
 

Chui partit sur stidée ;)
 
Pi ta method ca prend trop de place mysql nan? :ouch:

n°267106
Profil sup​primé
Posté le 11-12-2002 à 14:24:34  answer
 

j'ai pas une table de vote j'ai une table forum avec un rating pour chakun :)

n°267176
six_dfx
Well I'm the Lord of Time.
Posté le 11-12-2002 à 15:18:14  profilanswer
 

chacal_one333 a écrit :

j'ai pas une table de vote j'ai une table forum avec un rating pour chakun :)


 
créé une table en + alors pour les votes, avec un champ pour faire le lien sur l'id du topic (si j'ai bien compris ce que tu veux faire)
 
pour la place que ça prend c'est pas la mort t'as besoin de 3 champs int (topic, user, rating) pour chaque vote c'est tout ... et de plus ca te permet de savoir quand un user a déjà voté et donc de pas le recompter une 2eme fois ...


---------------
Don't blink. Don't even blink. Blink and you're dead. They are fast, faster than you could believe, don't turn your back, don't look away, and DON'T BLINK. Good luck.
mood
Publicité
Posté le 11-12-2002 à 15:18:14  profilanswer
 

n°267198
Profil sup​primé
Posté le 11-12-2002 à 15:31:21  answer
 

waip c ske jfait ;)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  pbm pour le rating

 

Sujets relatifs
Plus de sujets relatifs à : pbm pour le rating


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)