Print PHP
lanzari
Messages postés
107
Date d'inscription
Statut
Membre
Dernière intervention
-
coeus Messages postés 3296 Statut Membre -
coeus Messages postés 3296 Statut Membre -
Bonjour,
Je rencontre à nouveau un soucis :)
Je dispose du code suivant, qui me permet d'aller chercher dans une table des infos et il les affiche avec les deux "print" :
C'est un module de news. Pour afficher mes news j'écris le "print" a l'endroit voulu, cela fonctionne. Mais l'architecture de présentation de mes news est sous forme de
J'aurais besoin d'afficher qu'une seule news par "<li>" , comment faire ?
merci d'avance
--
Guillaume ARIZZI
Assitant Administrateur Réseau
Je rencontre à nouveau un soucis :)
Je dispose du code suivant, qui me permet d'aller chercher dans une table des infos et il les affiche avec les deux "print" :
<?php
include ("includes/connect_sql.php"); # parametres de connection SQL
$rs = mysql_query("select count(*) from news"); # nombre de news
$r = mysql_fetch_row($rs);
$tot = $r[0];
$limit = 6; # nombre de news affichées par défaut
if (isset($_GET['l'])) {$_GET['l'];$limit = $_GET['l']; # si la variable 'l' existe alors $limit = l;
# permet de modifier $limit via l'url du type [news.php?l=10]
}#end_if
$result = mysql_query("SELECT date,news FROM news WHERE 1 ORDER BY date DESC LIMIT $limit"); # on selection les $limit dernieres news
if(mysql_num_rows($result)) # si resultat different de vide alors
{
while($row=mysql_fetch_row($result)) # boucle pour séparer les resultats
{ $date = $row[0];
$date = preg_replace('/^(.{4})-(.{2})-(.{2})$/','$3.$2.$1', $date); # DateSQL => DateFR
$news = $row[1];
print ("<h3>$date</h3>");
print ("$news<br>");
}#end_while
}#end_if
if ($limit > $tot){} else { # si on affiche plus de news qu'il n'y en a alors rien sinon faire un lien pour tout afficher
$i = $tot + $limit; # $i est forcément > à $limit
print("<a href='index.php?n=news&l=".$i."'>Pour voir toutes les news.</a>");
}#end_if
?>
C'est un module de news. Pour afficher mes news j'écris le "print" a l'endroit voulu, cela fonctionne. Mais l'architecture de présentation de mes news est sous forme de
<ul> <li>Premiere news</li> <li>deuxieme news</li> </ul>
J'aurais besoin d'afficher qu'une seule news par "<li>" , comment faire ?
merci d'avance
--
Guillaume ARIZZI
Assitant Administrateur Réseau
5 réponses
-
Salut,
Je comprends mal ta question... Tu dis :
C'est un module de news. Pour afficher mes news j'écris le "print" a l'endroit voulu, cela fonctionne. Mais l'architecture de présentation de mes news est sous forme de
<ul>
<li>Premiere news</li>
<li>deuxieme news</li>
</ul>
J'aurais besoin d'afficher qu'une seule news par "<li>" , comment faire ?
Mais c'est exactement ce que tu as, non ? Le premier <li> contient une new, l'autre <li> en contient une autre ?
À moins que j'aie mal compris et qu'en fait tu obtiennes un résultat totalement différent ? -
En effet ca marche comme ca. Mais par rapport au traitement des informations juste au dessus, lorsque j'écris
<ul> <li> <?php print ("<h3>$date</h3>"); print ("$news<br>"); ?> </li> <li>deuxieme news</li> </ul>
il m'affiche toutes mes news en une seule fois. et si je copie le même code à la place de "deuxieme news" j'optiens deux fois toutes mes news.
Est ce plus clair ? -
une news par page? alors il ne faut pas faire de boucle et supprimer le WHILE.
-
OK je comprends mieux ton problème.
Essaie ceci. Au lieu de ta boucle while(), fais :
print_r(mysql_fetch_array($result));
On va pouvoir mieux voir ce que ta requête SQL te retourne exactement. Poste-nous le résultat, ou dis-nous la forme que ça prend...
Avant de critiquer quelqu'un, marche un mile dans ses souliers. Comme ça, s'il est enragé par ta critique, il est à un mile de distance et pieds nus. -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Array ( [0] => 2011-11-08 [date] => 2011-11-08 [1] => C'est un site nouveau qui vous permet...[news] => description
Voici ce que je vois sur ma page de news