Bonjour a tous,
Tout d'abord merci a celles et ceux qui tenteront de m'aider.
Pour faire court, j'essaie depuis plusieurs jours de créer un livre d'or avec moderation et pagination en PHP. Lorsque je test le code juste avec le livre d'or et la modération, tout fonctionne niquel.
Par contre j'ai un soucis avec la pagination, les numéros de page s'affichent bien mais ils ne prennent pas en compte les messages déja écrits. C'est a dire que j'essaie de limiter l'affichage a 5 messages par page, mais il affiche tous les messages sur toutes les pages.
Si quelqu'un pourrait me donner un coup de main ce serait sympa, surtout que je n'y connais rien en php.
Merci beaucoup a ceux qui m'aideront. (Et les commentaires désagréables, merci de les garder, je cherche de l'aide pas autre chose).
Décrivez ici votre code ou ce que vous cherchez à faire
<?php
mysql_connect('d...1.db.1and1.com','d...1','M...');
mysql_select_db('d...1');
$Msg = '';
if( count($_POST) > 0 ){
if( empty($_POST['Pseudo']) ){
$Msg = 'Vous devez saisir un pseudo.<br />';
}
if( empty($_POST['Message']) )
$Msg .= 'Vous devez saisir un message';
if( $Msg == '' ){
$IsInsert = mysql_query('INSERT INTO messages VALUES ("0","'.mysql_real_escape_string(htmlspecialchars($_POST['Pseudo'],ENT_QUOTES)).'","'.mysql_real_escape_string(htmlspecialchars($_POST['Message'],ENT_QUOTES)).'",CURRENT_TIMESTAMP,0) ') or 0;
if( $IsInsert != 0 ){
$Msg = '<p style="color:green;font-weight:bold;">Votre message a bien été sauvegardé, il est en attente de modération.</p>';
}
else{
$Msg = '<p style="color:red;font-weight:bold;">Il y a eu un soucis technique si le problème persiste merci de nous contacter. Veuillez réessayer ans quelque minutes.</p>';
}
}
else{
$Msg = '<p style="color:red;font-weight:bold;">'.$Msg.'</p>';
}
}
echo '<h1>Un commentaire ? Un avis ? Une idée ? Une amélioration ? <br><br>Laissez votre message ici !</h1>'.$Msg.'
<p><a href="gestion.php">Modérer les messages</a></p>
<form action="" method="post">
<div class="row">
<div class="col-lg-6 field">
<div class="form-group">
<label for="Pseudo">Votre pseudo :</label>
<input required type="text" name="Pseudo" class="form-control" id="Pseudo" value=""/>
</div>
</div>
<div class="col-lg-12 margintop10 field">
<div class="form-group">
<label for="Message">Votre message</label>
<textarea required id="Message" name="Message" class="form-control" cols="60" rows="10"></textarea>
</div>
</div>
<div class="col-lg-12">
<button type="submit" name="Send" value="Envoyer mon message" class="btn btn-theme margintop10 pull-left">Envoyer</button>
</div><br>
<br>
<br>
<br>
<br>
</form>';
//================
// Affichage des messages
//================
$LesMessages = mysql_query('SELECT * FROM messages WHERE PublierMessage=1 ORDER BY idMessage DESC');
if( mysql_num_rows($LesMessages) > 0 ){
while( $UnMessage = mysql_fetch_array($LesMessages) ){
$Date = date_parse($UnMessage['DateMessage']);
echo '
<div class="row">
<div class="col-lg-12">
<p>
Par <strong>'.$UnMessage['AuteurMessage'].'</strong> Le : <em>'.$Date['day'].'/'.$Date['month'].'/'.$Date['year'].'</em><br />
'.nl2br($UnMessage['Message']).'
</p>
<hr />
</div>
</div>
';
}
}
$num_rec_per_page=5;
mysql_connect('d...1.db.1and1.com','d...1','M...');
mysql_select_db('d...1');
if (isset($_GET["page"])) { $page = $_GET["page"]; } else { $page=1; };
$start_from = ($page-1) * $num_rec_per_page;
$IsInsert = "SELECT * FROM messages LIMIT $start_from, $num_rec_per_page";
$rs_result = mysql_query ($IsInsert); //run the query
$IsInsert = "SELECT * FROM messages";
$rs_result = mysql_query($IsInsert); //run the query
$total_records = mysql_num_rows($rs_result); //count number of records
$total_pages = ceil($total_records / $num_rec_per_page);
echo "<a href='livredor.php?page=1'>".'|<'."</a> "; // Goto 1st page
for ($i=1; $i<=$total_pages; $i++) {
echo "<a href='livredor.php?page=".$i."'>".$i."</a> ";
};
echo "<a href='livredor.php?page=$total_pages'>".'>|'."</a> "; // Goto last page
?>