Donner une note + faire moyenne des notes [Résolu/Fermé]

Signaler
Messages postés
788
Date d'inscription
mardi 14 juin 2005
Statut
Membre
Dernière intervention
15 juin 2010
-
Messages postés
788
Date d'inscription
mardi 14 juin 2005
Statut
Membre
Dernière intervention
15 juin 2010
-
bonjour.
j'ai peut-être déjà posé une question similaire, mais :

<!-- liste déroulante -->
Quel note donnes-tu à mon site?
<select name="note">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
	<option value="5">5</option>
	<option value="6">6</option>
	<option value="7">7</option>
	<option value="8">8</option>
	<option value="9">9</option>
	<option value="10">10</option>
	<option value="11">11</option>
	<option value="12">12</option>
	<option value="13">13</option>
	<option value="14">14</option>
	<option value="15">15</option>
	<option value="16">16</option>
	<option value="17">17</option>
	<option value="18">18</option>
	<option value="19">19</option>
	<option value="20" selected="selected">20</option>
</select>/20

	<!-- afficher note du site -->
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("test");// le nom de la BASE (qui peut contenir plusieurs tables)

$retour = mysql_query("SELECT COUNT(note) AS nbre_entrees FROM livreor");
$donnees = mysql_fetch_array($retour);

$moyenne = mysql_query("SELECT AVG(note) FROM livreor");
$points = mysql_fetch_array($moyenne);
print_r($points);


?>

La note générale pour le site est de <?php echo $points['note']; ?> sur 20.



<?php
mysql_close(); // Déconnexion de MySQL
?>



Ma question est la suivante: est-ce que ce code est bon pourafficher une liste déroulante où le visiteur doit mettre une note pour le site et où il calcule la moyenne des votes?

je crois que j'ai tout dis, mis apart que dans la bdd le contenu de note est "note, int(11), defaut 0 , null (non).

merci de votre aide

4 réponses

Messages postés
2025
Date d'inscription
jeudi 22 septembre 2005
Statut
Membre
Dernière intervention
18 novembre 2015
202
pour ce qui est de la liste déroulante , j'aurais mis plutot
<option value="20" selected="true">20</option>

et pour le reste ca n'a pas l'air mauvais, t'as des erreurs que tu demandes ca ?!

Zep3k!GnO
Messages postés
788
Date d'inscription
mardi 14 juin 2005
Statut
Membre
Dernière intervention
15 juin 2010
53
oui en fait je voudrais que ça calcule la moyenne du total des notes qui ont été données, mais ça n'a pas l'air d'aller
Messages postés
2025
Date d'inscription
jeudi 22 septembre 2005
Statut
Membre
Dernière intervention
18 novembre 2015
202
Voilà, moi j'aurais fais comme ca mais c'est pas le mieux...

    $requete="SELECT note FROM livreor";
    
    //Recuperations des valeurs
    $count=0; //initialisation d'une variable qui sert de compteur

   /*Variable a mettre a jour selon le nombre de valeurs que l'on désire lire*/
   $nbVal=1;
   /*fin de mise  a jourt de variable*/

   //recupération des valeurs dans un tableau ---------------------------------------------------------
   while($Valeur=mysql_fetch_array(mysql_db_query($nomBase,$requete,$handle))) //avec $nomBase qui vaut le nom de ta base ici test je crois ... et $handle qui est le numéro de handle que te retourne mysql_db_connect....
    {
      for($j=0;$j<$nbVal;$j++)  //selon le nombre d'information demandées en requête .
       {

         $recupere[$count]=$Valeur[$j];
         $count++;

       }

    }

$All=0;
for($i=0;$i<count($recupere);$i++)
{
    $All+=$recupere[$i];
}
$moyenne=$All / count($recupere);
Echo"Oh la belle moyenne que voici : $moyenne avec  ".count($recupere)." Votes";



voilà m'sieur .. .

Zep3k!GnO
Messages postés
788
Date d'inscription
mardi 14 juin 2005
Statut
Membre
Dernière intervention
15 juin 2010
53
merci, mais ça n'a pas trop l'air de fonctionner.
Voilà mon code mais je ne sais pas où est l'erreur :
    <form method="post" action="livreor.php">
    <p>Mon site vous plaît ? Laissez-moi un message !</p>
	

</p>

</p>
<!-- liste déroulante -->
Quel note donnes-tu à mon site?
<select name="note">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
	<option value="5">5</option>
	<option value="6">6</option>
	<option value="7">7</option>
	<option value="8">8</option>
	<option value="9">9</option>
	<option value="10">10</option>
	<option value="11">11</option>
	<option value="12">12</option>
	<option value="13">13</option>
	<option value="14">14</option>
	<option value="15">15</option>
	<option value="16">16</option>
	<option value="17">17</option>
	<option value="18">18</option>
	<option value="19">19</option>
	<option value="20" selected="selected">20</option>
</select>/20

	<!-- afficher note du site -->
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("test");// le nom de la BASE (qui peut contenir plusieurs tables)

$retour = mysql_query("SELECT COUNT(note) AS nbre_entrees FROM livreor");
$donnees = mysql_fetch_array($retour);

$moyenne = mysql_query("SELECT AVG(note) FROM livreor");
$points = mysql_fetch_array($moyenne);
print_r($points);


?>

La note générale pour le site est de <?php echo $points['note']; ?> sur 20.



<?php
mysql_close(); // Déconnexion de MySQL
?>
	
    <p>
        Pseudo : <input name="pseudo" /><br />
        Message :<br />

        <textarea name="message" rows="8" cols="35"></textarea> <br />
        <input type="submit" value="Envoyer" />
    </p>
    </form>



c'est quasi tout le code, mais je ne vois pas ce qui cloche...
Messages postés
788
Date d'inscription
mardi 14 juin 2005
Statut
Membre
Dernière intervention
15 juin 2010
53
...
Messages postés
788
Date d'inscription
mardi 14 juin 2005
Statut
Membre
Dernière intervention
15 juin 2010
53
...