par
Invité » 02 févr. 2007, 03:00
<form method="post" action="ffvii.php">
<p>Vous n'êtes pas d'accord ou au contraire vous voulez nous appuyez, laissez votre commentaire</p>
<p>
Pseudo <br/><input name="pseudo" /><br />
<label>
Votre note sur 20 :
<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"> 20 </option>
</select>
</label><br/>
Message <br/>
<textarea name="message" rows="8" cols="35"></textarea> <br />
<input type="submit" value="Envoyer" />
</p>
</form>
<p class="pages">
<?php
mysql_connect("localhost", "********", "********");
mysql_select_db("********");
// --------------- Etape 1 -----------------
// Si un message est envoyé, on l'enregistre
// -----------------------------------------
if (isset($_POST['pseudo']) AND isset($_POST['note']) AND isset($_POST['message']) )
{
$pseudo = htmlentities($_POST['pseudo'], ENT_QUOTES); // On utilise htmlentities par mesure de sécurité
$date = date('d/m/Y');
$heure = date('H\hi');
$note = intval($_POST['note']);
$message = htmlentities($_POST['message'], ENT_QUOTES); // De même pour le message
$message = nl2br($message); // Pour le message, comme on utilise un textarea, il faut remplacer les Entrées par des <br />
// On peut enfin enregistrer :o)
mysql_query("INSERT INTO comffvii VALUES('', '" . $pseudo . "', '". $date ."', '". $heure ."', '". $note ."', '" . $message . "')");
}
// --------------- Etape 2 -----------------
// On écrit les liens vers chacune des pages
// -----------------------------------------
// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 20; // Essayez de changer ce nombre pour voir :o)
// On récupère le nombre total de messages
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM comffvii');
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['nb_messages'];
// On calcule le nombre de pages à créer
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="ffvii.php?page=' . $i . '">' . $i . '</a> ';
}
?>
</p>
<?php
// --------------- Etape 3 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------
if (isset($_GET['page']))
{
$page = intval($_GET['page']); // On récupère le numéro de la page indiqué dans l'adresse (comotori.php?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
$page = 1; // On se met sur la page 1 (par défaut)
}
// 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 comffvii ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);
while ($donnees = mysql_fetch_array($reponse))
{
echo '<p align=center><strong>' . $donnees['pseudo'] .'</strong> ( le '. $donnees['date'] .' à '. $donnees['heure'].' ) </p>';
echo '<p align=center, style="color : red"><strong>Note : '.$donnees['note'] . '/20</strong></p>';
echo '<p align=center, style="color : blue"><strong>'.$donnees['message'] . '</strong></p>';
}
mysql_close(); // On n'oublie pas de fermer la connexion à MySQL ;o)
?>
</div>
Voila mon code sans la moyenne...
voila ma boucle pour la moyenne:
function moyenne($retour)
{
$note = 0;
$moyenne = 0;
while($donnees = mysql_fetch_array($retour))
{
$moyenne = $moyenne + $donnees['note'];
$note++;
}
if($note == 0)
{
echo 'Le site n\'a pas encore reçu de notes';
}
else
{
$moyenne /= $note;
echo 'La moyenne '.$moyenne;
}
}
Cependant, cette boucle n'affiche rien, peu importe où je la place, et mon problème vient surtout de renvoyer la moyenne à un endroit précis de ma page...
J'espère avoir donné suffisamment d'info...
[php]<form method="post" action="ffvii.php">
<p>Vous n'êtes pas d'accord ou au contraire vous voulez nous appuyez, laissez votre commentaire</p>
<p>
Pseudo <br/><input name="pseudo" /><br />
<label>
Votre note sur 20 :
<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"> 20 </option>
</select>
</label><br/>
Message <br/>
<textarea name="message" rows="8" cols="35"></textarea> <br />
<input type="submit" value="Envoyer" />
</p>
</form>
<p class="pages">
<?php
mysql_connect("localhost", "********", "********");
mysql_select_db("********");
// --------------- Etape 1 -----------------
// Si un message est envoyé, on l'enregistre
// -----------------------------------------
if (isset($_POST['pseudo']) AND isset($_POST['note']) AND isset($_POST['message']) )
{
$pseudo = htmlentities($_POST['pseudo'], ENT_QUOTES); // On utilise htmlentities par mesure de sécurité
$date = date('d/m/Y');
$heure = date('H\hi');
$note = intval($_POST['note']);
$message = htmlentities($_POST['message'], ENT_QUOTES); // De même pour le message
$message = nl2br($message); // Pour le message, comme on utilise un textarea, il faut remplacer les Entrées par des <br />
// On peut enfin enregistrer :o)
mysql_query("INSERT INTO comffvii VALUES('', '" . $pseudo . "', '". $date ."', '". $heure ."', '". $note ."', '" . $message . "')");
}
// --------------- Etape 2 -----------------
// On écrit les liens vers chacune des pages
// -----------------------------------------
// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 20; // Essayez de changer ce nombre pour voir :o)
// On récupère le nombre total de messages
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM comffvii');
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['nb_messages'];
// On calcule le nombre de pages à créer
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="ffvii.php?page=' . $i . '">' . $i . '</a> ';
}
?>
</p>
<?php
// --------------- Etape 3 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------
if (isset($_GET['page']))
{
$page = intval($_GET['page']); // On récupère le numéro de la page indiqué dans l'adresse (comotori.php?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
$page = 1; // On se met sur la page 1 (par défaut)
}
// 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 comffvii ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);
while ($donnees = mysql_fetch_array($reponse))
{
echo '<p align=center><strong>' . $donnees['pseudo'] .'</strong> ( le '. $donnees['date'] .' à '. $donnees['heure'].' ) </p>';
echo '<p align=center, style="color : red"><strong>Note : '.$donnees['note'] . '/20</strong></p>';
echo '<p align=center, style="color : blue"><strong>'.$donnees['message'] . '</strong></p>';
}
mysql_close(); // On n'oublie pas de fermer la connexion à MySQL ;o)
?>
</div>[/php]
Voila mon code sans la moyenne...
voila ma boucle pour la moyenne:
[php]function moyenne($retour)
{
$note = 0;
$moyenne = 0;
while($donnees = mysql_fetch_array($retour))
{
$moyenne = $moyenne + $donnees['note'];
$note++;
}
if($note == 0)
{
echo 'Le site n\'a pas encore reçu de notes';
}
else
{
$moyenne /= $note;
echo 'La moyenne '.$moyenne;
}
} [/php]
Cependant, cette boucle n'affiche rien, peu importe où je la place, et mon problème vient surtout de renvoyer la moyenne à un endroit précis de ma page...
J'espère avoir donné suffisamment d'info...