par
Vince Cotta » 01 avr. 2012, 19:57
Bonjour,
Voila mon souci:
Je crée un script pour afficher mes news qui sont stockés dans une BDD toutefois lorsque je les affiche seul la ligne 1 s'affiche.
mon code:
<?php
session_start();
require('connect.php');
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<link href="style.css" rel="stylesheet"/>
<title>CROIZAD - Réseau|News</title>
</head>
<body>
<a href="terre.php"><?php include("bann.php");?></a>
<?php include("menu.php");?>
<br/>
<br/>
<div class="titre">
News
</div>
<br/>
<br/>
<?php
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=croizad', 'root', '', array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'));
$nombreDeMessagesParPage = 5; // Essayez de changer ce nombre pour voir :o)
// On récupère le nombre total de messages
$reponse = $bdd->query('SELECT COUNT(titre) AS nb_messages FROM news');
$donnees = $reponse->fetch();
$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
?>
<br/>
<br/>
<div class="pagination">
<?php echo '<p>Page : </p>';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a class="pagination" href="membres.php?page=' . $i . '">' . $i . '</a> ';
}?>
</div>
<?php
// Connexion à la base de donnée
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 = $bdd->query('SELECT * FROM news ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);
$data = $reponse->fetch(PDO::FETCH_OBJ);
?>
<br/>
<div id="contenu">
<p>Vous retrouvez ici toutes les news du site</p>
<br/>
<?php while ($data = $reponse->fetch(PDO::FETCH_ASSOC)){?>
<table>
<tr>
<th style="border:3px ridge black; width:20%; text-align:center; padding:0px; background:white; border-radius:10px;">
<p style="text-align:center; font-size:12px;"><?php echo date("d/m/Y", strtotime($data['date']));?></p>
<p style="text-align:center; font-size:12px;"><?php echo date("H:i:s", strtotime($data['date']));?></p>
</th>
<td style="font-size:40px; text-align:center; border:3px ridge black; background:white; border-radius:10px;">
<a style="color:red;" href="<?php echo strip_tags($data['url']);?>" target="_blank"><?php echo strip_tags($data['titre']);?></a>
</td>
</tr>
<tr>
<td style=" padding:20px;
border:3px ridge black;
background:white;
border-radius:10px;" colspan="2">
<p><?php echo strip_tags($data['contenu']);?></p>
</td>
</tr>
</table>
<br/>
</div>
<?php } $reponse->closeCursor();?>
<br/>
<?php include ("footer.php");?>
</body>
</html>
Que faire?
Bonjour,
Voila mon souci:
Je crée un script pour afficher mes news qui sont stockés dans une BDD toutefois lorsque je les affiche seul la ligne 1 s'affiche.
mon code:
[php]
<?php
session_start();
require('connect.php');
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<link href="style.css" rel="stylesheet"/>
<title>CROIZAD - Réseau|News</title>
</head>
<body>
<a href="terre.php"><?php include("bann.php");?></a>
<?php include("menu.php");?>
<br/>
<br/>
<div class="titre">
News
</div>
<br/>
<br/>
<?php
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=croizad', 'root', '', array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'));
$nombreDeMessagesParPage = 5; // Essayez de changer ce nombre pour voir :o)
// On récupère le nombre total de messages
$reponse = $bdd->query('SELECT COUNT(titre) AS nb_messages FROM news');
$donnees = $reponse->fetch();
$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
?>
<br/>
<br/>
<div class="pagination">
<?php echo '<p>Page : </p>';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a class="pagination" href="membres.php?page=' . $i . '">' . $i . '</a> ';
}?>
</div>
<?php
// Connexion à la base de donnée
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 = $bdd->query('SELECT * FROM news ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);
$data = $reponse->fetch(PDO::FETCH_OBJ);
?>
<br/>
<div id="contenu">
<p>Vous retrouvez ici toutes les news du site</p>
<br/>
<?php while ($data = $reponse->fetch(PDO::FETCH_ASSOC)){?>
<table>
<tr>
<th style="border:3px ridge black; width:20%; text-align:center; padding:0px; background:white; border-radius:10px;">
<p style="text-align:center; font-size:12px;"><?php echo date("d/m/Y", strtotime($data['date']));?></p>
<p style="text-align:center; font-size:12px;"><?php echo date("H:i:s", strtotime($data['date']));?></p>
</th>
<td style="font-size:40px; text-align:center; border:3px ridge black; background:white; border-radius:10px;">
<a style="color:red;" href="<?php echo strip_tags($data['url']);?>" target="_blank"><?php echo strip_tags($data['titre']);?></a>
</td>
</tr>
<tr>
<td style=" padding:20px;
border:3px ridge black;
background:white;
border-radius:10px;" colspan="2">
<p><?php echo strip_tags($data['contenu']);?></p>
</td>
</tr>
</table>
<br/>
</div>
<?php } $reponse->closeCursor();?>
<br/>
<?php include ("footer.php");?>
</body>
</html>
[/php]
Que faire?