Voila j'essaye de faire une moyenne des notes données à des jeux (test fait par des gens) mais étant un débutant, je ne vois pas du tout comment le faire. :s
Pouvez vous m'aider ?
Voici mon code :
<form action="farcry2.php" method="post">
<p>
Pseudo :<br /> <input type="text" name="pseudo" /><br />
Message :<br /> <textarea name="message" rows="10" cols="82">Votre test ici.
<?php
$texte = stripslashes($message);
?>
</textarea><br />
Quelle note donneriez vous à ce jeu ? <select name="note"><option name="note1">1</option>
<option name="note2">2</option>
<option name="note3">3</option>
<option name="note4">4</option>
<option name="note5">5</option>
<option name="note6">6</option>
<option name="note7">7</option>
<option name="note8">8</option>
<option name="note9">9</option>
<option name="note10" selected="selected">10</option>
<option name="note11">11</option>
<option name="note12">12</option>
<option name="note13">13</option>
<option name="note14">14</option>
<option name="note15">15</option>
<option name="note16">16</option>
<option name="note17">17</option>
<option name="note18">18</option>
<option name="note19">19</option>
<option name="note20">20</option>
</select><br />
<input type="submit" value="Envoyer le message" />
</p>
</form>
<p class="page">
<?php
mysql_connect("*********", "**************", "*******");
mysql_select_db("**********");
// --------------- Etape 1 -----------------
// Si un message est envoyé, on l'enregistre
// -----------------------------------------
if (isset($_POST['pseudo']) AND isset($_POST['message']) AND isset($_POST['note']))
{
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo'])); // On utilise mysql_real_escape_string et htmlspecialchars par mesure de sécurité
$message = mysql_real_escape_string(nl2br(htmlspecialchars($_POST['message']))); //idem pour la var message
$note = htmlspecialchars($_POST['note']);
$date = date("d-m-Y"); //on formalise la date
$heure = date("H:i"); // on formalise l'heure
$date_complete = 'Le ' . $date . ' à ' . $heure ; //on donne à la date complete une forme combinée des deux variables précédentes en ajoutant du texte
$avant = array("\\","/","#","*","é","?","<",">","+",")","à","|","(");
$apres = array("//","//","//","//","e","//","//","//","//","//","a","//","//");
$mots=str_replace($avant,$apres,$mots);
$erreur="";
if ($pseudo=="")
{
$erreur=$erreur."Votre message ne contient pas de pseudo...";//Premierement, verif du pseudo
}
if ($message=="")
{
$erreur=$erreur."Un test sans test... ;-)"; //Deuxiemement, verif du message
}
if ($erreur=="")
{
//Donc si il n'y a pas d'erreur (erreur = rien)
echo "<font style=\"color:green;\">Votre message à bien été enregistré !<br />Merci !</font><br />";
// On peut enregistrer le message dans la table
mysql_query("INSERT INTO farcry2 VALUES(\"\", \"" . $pseudo . "\", \"" . $message . "\")");
mysql_query("INSERT INTO farcry2 VALUES('', '" . $note . "', '" . $date_complete . "', '" . $pseudo . "', '" . $message . "')");
}
//Donc si "erreur" contient une réponse... qu'il y a erreur quoi XD :
else
{
echo "<font style=\"color:red;\">Une erreur s'est produite : ".$erreur. "</font><br />";
}
}
// --------------- Etape 2 -----------------
// On écrit les liens vers chacune des pages
// -----------------------------------------
//on place le nombre de message pas page dans une variable
$nombreDeMessagesParPage = 20;
//on récupère le nombre de total de messages
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM farcry2');
$donnees = mysql_fetch_array($retour);$totalDesMessages = $donnees['nb_messages'];
//on calcule le nombre de page à créer
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
//maintenant je fais une boucle pour savoir combien de lien je vais créer
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="farcry2.php?page=' . $i . '">' . $i . '</a>';
}
?>
</p>
<?php
// --------------- Etape 3 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------
if (isset($_GET['page']))
{
// $page = $_GET['page']; cette forme est bonne, mais ajouter intval permet d'afficher obligatoirement un nombre.. question de sécurité
$page = intval($_GET['page']);
}
else
{
$page = 1; //page = 1 si c'est la première fois que le visiteur arrive sur le livre or, il n'y a donc pas de get, donc pas de changement de page.
}
// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
$reponse = mysql_query('SELECT * FROM farcry2 ORDER BY ID DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);
while ($donnees = mysql_fetch_array($reponse))
{
echo '<p><em><small>' . $donnees['date_complete'] . '</small></em><br /><strong>' . stripslashes($donnees['pseudo']) . '</strong> a écrit :<br />' . stripslashes($donnees['message']) . '<br /><em>Note attribuée : ' . $donnees['note'] . '</em></p>';
}
mysql_close(); // On n'oublie pas de fermer la connexion à MySQL
?>
Merci d'avance pour votre aide !