Print PHP

Fermé
lanzari Messages postés 105 Date d'inscription lundi 20 juillet 2009 Statut Membre Dernière intervention 12 novembre 2017 - 8 nov. 2011 à 18:19
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 - 9 nov. 2011 à 20:12
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" :
<?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


A voir également:

5 réponses

coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
8 nov. 2011 à 23:38
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 ?
0
lanzari Messages postés 105 Date d'inscription lundi 20 juillet 2009 Statut Membre Dernière intervention 12 novembre 2017 13
8 nov. 2011 à 23:53
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 ?
0
graffx Messages postés 6506 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 24 mars 2019 1 973
9 nov. 2011 à 06:36
une news par page? alors il ne faut pas faire de boucle et supprimer le WHILE.
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
Modifié par coeus le 9/11/2011 à 15:25
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.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lanzari Messages postés 105 Date d'inscription lundi 20 juillet 2009 Statut Membre Dernière intervention 12 novembre 2017 13
9 nov. 2011 à 20:05
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
0
coeus Messages postés 3019 Date d'inscription samedi 13 janvier 2007 Statut Membre Dernière intervention 19 juin 2013 119
9 nov. 2011 à 20:12
Bizarre ça... Ta base de données doit être drôlement organisée...
Peux-tu nous faire un export de ta table news et nous le poster ? Cache l'information privée en remplaçant des bouts de texte par des "[...]" si tu veux.
0