Erreur de programmation mais je ne vois pas ou ? aidez-moi svp..

netwebzone Messages postés 55 Date d'inscription dimanche 12 décembre 2004 Statut Membre Dernière intervention 22 août 2008 - 28 déc. 2004 à 17:39
ricklekebekoi Messages postés 303 Date d'inscription mardi 11 février 2003 Statut Membre Dernière intervention 24 avril 2009 - 28 déc. 2004 à 18:32
Bonjour,

J'aurais besoin de votre aide pour trouver l'erreur dans mon code, je n'arrête pas de le reprendre mais je ne vois toujours pas ou ca va pas, peut-être qu'un oeil extérieur trouvera le problème...
Alors je vais vous expliquer un petit peu quand même... on sélectionne dans la table nwz_news toutes les news qui ont une date égale ou inférieur à aujourd'hui.
Ensuite il faut remplacer dans $affichage : [Date] par la date et [News] par la news correspondante, et ceci pour chaque news... et ensuite les afficher une en dessous de l'autre...
L'ennui c'est que moi, par exemple j'ai 5 news, mais ca m'affiche la dernière news cinq fois, alors que ca devrait afficher les 5 news différentes les unes en dessous des autres... pourtant il y a bien while...
Enfin je ne sais pas, si quelqu'un pourrait m'aider...

Voici mon code :

$affichage = '[Date] : [News]';
$limit_affich = '10';

$date = @date('Y-m-d');
$sql_affich = 'SELECT * '
. ' FROM `nwz_news` '
. ' WHERE `date` <= "'.$date.'" ORDER BY `date` ASC LIMIT 0,'.$limit_affich.'';

$result_affich = @mysql_query($sql_affich, $connect_db) or die ('Impossible d\'afficher les news');
while($row_affich = @mysql_fetch_array($result_affich))
{
$annee = substr($row_affich['date'],0,4);
$mois = substr($row_affich['date'],5,2);
$jour = substr($row_affich['date'],8,2);

$date_affich = ''.$jour.'/'.$mois.'/'.$annee.'';

$affichage = str_replace("[Date]", $date_affich, $affichage);
$affichage = str_replace("[News]", $row_affich['news'], $affichage);

echo $affichage;
}

PS :
lorsque je remplace echo $affichage; par echo $row_affich['news'];
Toutes les news s'affichent bien, ca devrait donc dire qu'il y aurait un problème avec le str_replace ? ou bien ailleurs ? mais je ne vois pas ou moi ?

Merci de votre aide !

@+

3 réponses

ricklekebekoi Messages postés 303 Date d'inscription mardi 11 février 2003 Statut Membre Dernière intervention 24 avril 2009 5
28 déc. 2004 à 18:10
Pourquoi ne pas faire simplement:

$affichage = $date_affich.' : '.$row_affich['news'];


et enlever aussi la premiere ligne de ce bout de code ?

Eric ;)
0
netwebzone Messages postés 55 Date d'inscription dimanche 12 décembre 2004 Statut Membre Dernière intervention 22 août 2008
28 déc. 2004 à 18:19
Euh parce que la variable $affichage, normalement je la récupère de la BDD, parce que ce n'est pas toujours la même chose : [Date] : [News]
ca peut être modifié...
Mais je crois que c'est bon, il faut en fait mettre la variable affichage dans le while...

Merci
a+
0
ricklekebekoi Messages postés 303 Date d'inscription mardi 11 février 2003 Statut Membre Dernière intervention 24 avril 2009 5
28 déc. 2004 à 18:32
Arf lol bah vi logique :P

Eric ;)
0
Rejoignez-nous