Ajout systeme de pages

Toutes les questions et les aides qui concernent le langage PHP
Avatar de l’utilisateur
ColdFusion
Tutomaker Apprenti
Tutomaker Apprenti
 
Messages: 56
Enregistré le: Mar Juin 26, 2007 5:43 pm
Localisation: Martinique

Ajout systeme de pages

Messagepar ColdFusion le Ven Déc 07, 2007 4:13 pm

Bon alors dans mon livre d'or, j'ai ça:

Code: Tout sélectionner
<?php
$dbhost = 'imysql04';
$dblogin = 'i5075984';
$dbpassword = 'xxxxxxxxxx' ;
$dbname = 'i5075984' ;

mysql_connect($dbhost,$dblogin,$dbpassword);
mysql_select_db($dbname);

if (isset($_POST['pseudo']) AND isset($_POST['message']))
{
$pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
$message = mysql_real_escape_string(htmlspecialchars($_POST['message']));
$message = nl2br($message);
mysql_query("INSERT INTO livreor VALUES('', '" . $pseudo . "', '" . $message . "')");
}
$nombreDeMessagesParPage = 20;
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM livreor');
$donnees = mysql_fetch_array($retour);$totalDesMessages = $donnees['nb_messages'];
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="livreor.php?page=' . $i . '">' . $i . '</a> ';
}
?>
</p>
<?php
if (isset($_GET['page']))
{
$page = intval($_GET['page']);
}
else
{
$page = 1;
}
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
$reponse = mysql_query('SELECT * FROM livreor ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);
while ($donnees = mysql_fetch_array($reponse))
{
echo '<p><strong>' . $donnees['pseudo'] . '</strong>:<br />' . $donnees['message'] . '</p>';
}
mysql_close();
?>


Et dans mon script de news j'ai ça:

Code: Tout sélectionner
<?php
$dbhost = 'imysql04';
$dblogin = 'i5075984';
$dbpassword = 'xxxxxxxxxx' ;
$dbname = 'i5075984' ;

mysql_connect($dbhost,$dblogin,$dbpassword);
mysql_select_db($dbname);

$retour = mysql_query('SELECT * FROM news ORDER BY id DESC LIMIT 0,10');
while ($donnees = mysql_fetch_array($retour))
{
?>
<div class="global1">
<h2><?php echo $donnees['titre']; ?></h2>

<p>
<?php
// On enlève les éventuels antislash PUIS on crée les entrées en HTML (<br />)
$contenu = nl2br(stripslashes($donnees['contenu']));
echo $contenu;
?>
</p>
<h6>le <?php echo date('d/m/Y à H\hi', $donnees['timestamp']); ?></h6>


Ce qui m'intéresse c'est de mettre l'espèce de script qui permet de faire une nouvelle page pour stocker les anciennes news dedans à partir d'un certains nombre de news par page.

Avatar de l’utilisateur
Yoyo
Gérant
Gérant
 
Messages: 2031
Enregistré le: Mer Sep 27, 2006 4:54 pm

Messagepar Yoyo le Ven Déc 07, 2007 4:20 pm

J'ai rien compris, va falloir mieux expliquer ^^
Vive les tutomakers ;)

Avatar de l’utilisateur
ColdFusion
Tutomaker Apprenti
Tutomaker Apprenti
 
Messages: 56
Enregistré le: Mar Juin 26, 2007 5:43 pm
Localisation: Martinique

Messagepar ColdFusion le Ven Déc 07, 2007 4:24 pm

En fait je veux le même principe que le livre d'or: Quand il y aura 20 messages par page, PHP créera une nouvelle page pour y mettre les 20 dernières news.

Avatar de l’utilisateur
Yoyo
Gérant
Gérant
 
Messages: 2031
Enregistré le: Mer Sep 27, 2006 4:54 pm

Messagepar Yoyo le Ven Déc 07, 2007 4:28 pm

Ben suffit d'intégrer le système de page dans ton script de news non ? :)

Des bêtes copiés collés :D
Vive les tutomakers ;)

Avatar de l’utilisateur
ColdFusion
Tutomaker Apprenti
Tutomaker Apprenti
 
Messages: 56
Enregistré le: Mar Juin 26, 2007 5:43 pm
Localisation: Martinique

Messagepar ColdFusion le Ven Déc 07, 2007 4:35 pm

Donc je devrai faire:

Code: Tout sélectionner
<?php
$dbhost = 'imysql04';
$dblogin = 'i5075984';
$dbpassword = 'xxxxxxxxxx' ;
$dbname = 'i5075984' ;

mysql_connect($dbhost,$dblogin,$dbpassword);
mysql_select_db($dbname);

$retour = mysql_query('SELECT * FROM news ORDER BY id DESC LIMIT 0,10');
while ($donnees = mysql_fetch_array($retour))
{
?>
<div class="global1">
<h2><?php echo $donnees['titre']; ?></h2>

<p>
<?php
// On enlève les éventuels antislash PUIS on crée les entrées en HTML (<br />)
$contenu = nl2br(stripslashes($donnees['contenu']));
echo $contenu;
?>
</p>
<h6>le <?php echo date('d/m/Y à H\hi', $donnees['timestamp']); ?></h6>

<?php
$nombreDeMessagesParPage = 20;
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM news');
$donnees = mysql_fetch_array($retour);$totalDesMessages = $donnees['nb_messages'];
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="news.php?page=' . $i . '">' . $i . '</a> ';
}
?>
</p>
<?php
if (isset($_GET['page']))
{
$page = intval($_GET['page']);
}
else
{
$page = 1;
}
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
$reponse = mysql_query('SELECT * FROM news ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);
mysql_close();
?>
?>

Avatar de l’utilisateur
Yoyo
Gérant
Gérant
 
Messages: 2031
Enregistré le: Mer Sep 27, 2006 4:54 pm

Messagepar Yoyo le Ven Déc 07, 2007 4:49 pm

Eurf non pas trop :)

Moi j'aurais fait ça:

Code: Tout sélectionner

<?php
$dbhost = 'imysql04';
$dblogin = 'i5075984';
$dbpassword = 'xxxxxxxxxx' ;
$dbname = 'i5075984' ;

mysql_connect($dbhost,$dblogin,$dbpassword);
mysql_select_db($dbname);

$nombreDeMessagesParPage = 10;
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM news');
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['nb_messages'];
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="livreor.php?page=' . $i . '">' . $i . '</a> ';
}
?>
</p>
<?php
if (isset($_GET['page']))
{
$page = intval($_GET['page']);
}
else
{
$page = 1;
}
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
$reponse = mysql_query('SELECT * FROM news ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);
while ($donnees = mysql_fetch_array($reponse))
{
echo '<div class="global1"><h2>' . $donnees['titre'] . '</h2><p>' . nl2br(stripslashes($donnees['contenu'])) . '</p>';
echo '<h6>le'.date('d/m/Y à H\hi', $donnees['timestamp']).'</h6>';
}
mysql_close();
?>
Vive les tutomakers ;)

Avatar de l’utilisateur
ColdFusion
Tutomaker Apprenti
Tutomaker Apprenti
 
Messages: 56
Enregistré le: Mar Juin 26, 2007 5:43 pm
Localisation: Martinique

Messagepar ColdFusion le Ven Déc 07, 2007 5:07 pm

Ba c'est super, merci à toi Yoyo pour ton aide. Je mettrai un petit truk sur mon site pour toi quand j'aurai finis le recodage

Avatar de l’utilisateur
Yoyo
Gérant
Gérant
 
Messages: 2031
Enregistré le: Mer Sep 27, 2006 4:54 pm

Messagepar Yoyo le Ven Déc 07, 2007 5:11 pm

Merci Dripik :)

Et je voudrai bien t'aider sur le forum tant que tu veux pour tout ce qui est web :)
Vive les tutomakers ;)



  • { SIMILAR_TOPICS }
    Réponses
    Forum

Retourner vers Langage PHP

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 0 invités