1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
| <span class="border"></span>
<?php
echo
'<form method="post" action="upload.php?id=' .$_GET['id']. '">' ?>
<p align="left">Laisser un commentaire</p>
<p align="left">
<br />
Nom (obligatoire) : <input type="text" name="pseudo" value="<?php echo htmlentities(trim($_SESSION['login2'])); ?>" /><br/><br/>
Commentaire :<br />
<TEXTAREA type="text" rows="5" cols="61" name="message"></TEXTAREA><br />
<input type="submit" value="Envoyer" />
</p>
</form>
<div id="pagination">
<?php
// --------------- Etape 1 -----------------
// Si un message est envoyé, on l'enregistre
// -----------------------------------------
if (isset($_POST['message']) AND isset($_POST['pseudo']))
{
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
$message = mysql_real_escape_string(htmlspecialchars($_POST['message'])); // 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 livreor VALUES('', '". $_GET['id'] ."', '" . $pseudo. "', '" . $message . "', '" . time() . "')");
}
// --------------- 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 = 10; // 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 livreor WHERE id2="' . $_GET['id'] . '" ');
$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="upload.php?id='.$_GET['id'].'&page=' . $i . '">' . $i . '</a> ';
}
?>
<br/><br/>
</div>
<span class="border"></span>
<p align="left"><?php echo $totalDesMessages?> commentaires</p>
<?php
// --------------- Etape 3 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------
if (isset($_GET['page']))
{
$page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.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 livreor WHERE id2="' . $_GET['id'] . '" ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage );
while ($donnees = mysql_fetch_array($reponse))
{
echo ' <p align="left">
'.nl2br($donnees['pseudo']).' le '.date('d/m/Y', $donnees['timestamp']);?> à <?php echo date('H\:i\:s\ ', $donnees['timestamp']).':
<br />' . nl2br($donnees['message']) . '</p>
<br/>
';
}
?> |
Partager