8791 sujets

Développement web côté serveur, CMS

Bonjour, j'ai afficher le nb de d'annonce avec ce code:

<?
$link = mysql_connect("localhost", "***", "****");
mysql_select_db("***", $link) or die(mysql_error());
$query = "SELECT * FROM `pme_agenda`";
$result = mysql_query($query, $link) or die($query . " - " . mysql_error());
$nbResults = mysql_num_rows($result);
echo $nbResults;
?>


qui est suremment pas tout juste mais ca fonctionne, mais j'aimerais afficher les 5 premiers titre.

pouvez-vous m'aider un peut ?
Modifié par doublemetre (13 May 2008 - 23:25)
c'est le role de LIMIT en mysql

SELECT * FROM `pme_agenda` LIMIT 5;

tu pourrais meme mettre LIMIT 5,10 imaginons si tu voulais les 6 a 15 premiers ( apres 5 les 10 suivants ) et là ça a l'air de rien mais SQL SERVER ne sais pas faire quelle force le MYSQL quand même.

et ensuite tu fais un while jusqu'a ce que tu es traité chaque resultats

while ( $r = mysql_fetch_assoc($result) ) {

 echo $r['bidule']." et aussi machin:".$r['machin']." 
et taratata ".$r['taratata'];

// en imaginant que tu es choisi des noms aussi cool
// pour tes champs  [langue] 

} 


sinon sans changer la requete au cas où elle serait exploiter par ailleurs tu peux te contenter d'un
for ($i=0;$i<5;$i++) {
   $r = mysql_fetch_assoc($result);
   echo $r['bidule']." et aussi machin:".$r['machin']." 
et taratata ".$r['taratata'];
}


hop tu as ta requete complete et tu affiche que les 5 prem resultat. mais si tu n'en fais rien la premiere solution est preferable. plus rapide.
Modifié par CPascal (13 May 2008 - 22:48)
Merci de m'aider.

mais j'ai une erreur: Fatal error: Call to undefined function: mysql_fech_assoc() in /home//index.php on line 12
c'est la ligne du while.
eh oui oublié un t. j'edite mon ancien message ce sera mieux pour d'eventuel passant.
Modifié par CPascal (13 May 2008 - 22:47)
oui :


SELECT * FROM `pme_agenda` ORDER BY `le_nom_de_ton_champ` DESC LIMIT 5;


Tu peux aussi remplacer DESC (ordre descendant) par ASC (ascendant) pour avoir le tri dans l'autre sens.
Modifié par Surfoo (14 May 2008 - 23:18)