Page 1 sur 1

Afficher les 3 derniers enregistrements

Posté : 02 févr. 2006, 11:17
par paolo 4
Bonjour,

J'ai cette requête qui m'affiche les 3 derniers enregistrements de ma table effectuer.
Cette requete fonctionne sous mysql.
$sql1="SELECT nom_com, nom_celeb, jour, mois, annee, heure, min FROM tb_celebration, tb_effectuer, tb_communaute WHERE tb_celebration.id_celeb=tb_effectuer.id_celeb AND tb_effectuer.id_com=tb_communaute.id_com AND id_secteur='$id' ORDER BY annee, mois DESC LIMIT 3";
Mon probleme est que je voudrait afficher ensuite ces 3 derniers enregistrement sur 3 lignes différentes.

1 ligne pour chaque enregistrement.

Mais je ne sais pas comment procéder

Quelqu'un peut-il m'aider?

merci

Posté : 02 févr. 2006, 11:32
par didgar
Salut !

Il faut faire :

$result = mysql_query($sql1,$link);

while($ligne = mysql_fetch_assoc($result))
{
     $temp_tab[] = $ligne; // création du tableau associatif
}


for($i=0;$i<3;$i++)
{
     echo '<p>'.$temp_tab[$i]['nom_du_champ_1'].' '.$temp_tab[$i]['nom_du_champ_2'].' '.$temp_tab[$i]['nom_du_champ_n'].'</p>';
}
C'est ce que tu voulais ?

A+

Didier

Posté : 02 févr. 2006, 11:51
par paolo 4
J'ai fait ce que tu m'as dit, merci, mais maintenant il m'affiche des "array" à la place de mes champs ?? Pk dont ?

Posté : 02 févr. 2006, 11:56
par albat
autre possibilité :
$result = mysql_query($sql1);
while ($ligne = mysql_fetch_assoc($result))
      { extract($ligne);
        echo "<p>".$nom_com." ".$nom_celeb. ... "</p>";
      }

Posté : 02 févr. 2006, 12:07
par didgar
J'ai fait ce que tu m'as dit, merci, mais maintenant il m'affiche des "array" à la place de mes champs ?? Pk dont ?
Sais pas moi ! Fais voir ton code !

A+

Didier

Posté : 02 févr. 2006, 12:08
par didgar
autre possibilité :
$result = mysql_query($sql1);
while ($ligne = mysql_fetch_assoc($result))
      { extract($ligne);
        echo "<p>".$nom_com." ".$nom_celeb. ... "</p>";
      }
Exact ! Mais je préfère tjs dissocier la récup de données de l'affichage. C'est une habitude :oops:

A+

Didier