[PHP] requete simple
JEAN JEAN
-
P@t@ch0n Messages postés 565 Date d'inscription Statut Membre Dernière intervention -
P@t@ch0n Messages postés 565 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un soucis vraiment etrange sur une requete des plus simples..
voilà ma requete
je voudrais donc afficher les 3 derniers commentaires
or je susi obligé de mettre LIMIT 0,4
pour obtenir 3 commentaires et ce n est pas les 3 derniers mais les 3 avant derniers (dernier-1 ; dernier -2 et dernier -3)
si l erreur est deja arrivée a l un d entre vous alors je serais heureux que vous m'expliquiez la solution
ou si tout simplement ja i une erreur dans mon code
je précise que j ai supprimé le premier commentaire dans ma table, mais bon.. ca devrait n avoir rien avoir
merci!
J'ai un soucis vraiment etrange sur une requete des plus simples..
voilà ma requete
$sql_derniers_coms = "SELECT * FROM coms WHERE type='news' ORDER BY id DESC LIMIT 0,3"; $derniers_coms = mysql_query($sql_derniers_coms); $donnees4 = mysql_fetch_array($derniers_coms);
je voudrais donc afficher les 3 derniers commentaires
or je susi obligé de mettre LIMIT 0,4
pour obtenir 3 commentaires et ce n est pas les 3 derniers mais les 3 avant derniers (dernier-1 ; dernier -2 et dernier -3)
si l erreur est deja arrivée a l un d entre vous alors je serais heureux que vous m'expliquiez la solution
ou si tout simplement ja i une erreur dans mon code
je précise que j ai supprimé le premier commentaire dans ma table, mais bon.. ca devrait n avoir rien avoir
merci!
A voir également:
- [PHP] requete simple
- Iphone 14 simple - Guide
- Simple pdf - Télécharger - PDF
- Easy php - Télécharger - Divers Web & Internet
- Simple ocr - Télécharger - Bureautique
- Simple file locker - Télécharger - Sécurité
4 réponses
Bonjour
Lis la doc mysql, il y a des choses pas claires au niveau de l'optimisation avec LIMIT, par exemple :
Si vous utilisez LIMIT # avec la clause ORDER BY , MySQL va arrêter de trier dès qu'il a trouvé la première # au lieu de trier toute la table.
Ça va peut-être mieux en utilisant HAVING au lieu de WHERE
Lis la doc mysql, il y a des choses pas claires au niveau de l'optimisation avec LIMIT, par exemple :
Si vous utilisez LIMIT # avec la clause ORDER BY , MySQL va arrêter de trier dès qu'il a trouvé la première # au lieu de trier toute la table.
Ça va peut-être mieux en utilisant HAVING au lieu de WHERE
arf même avec having j ai le même problème
j irai me renseigner dans la doc mysql, mais si quelqu'un à eu le même soucis n hesitez tout de même pas à me dire vos solutions
merci
j irai me renseigner dans la doc mysql, mais si quelqu'un à eu le même soucis n hesitez tout de même pas à me dire vos solutions
merci
A savoir, lorsque tu utilises mysql_fetch_x() le pointeur est automatiquement déplacé sur la ligne suivante.
Plus clairement :
Plus clairement :
$sql = "SELECT id, a, b FROM unetable ORDER BY id DESC LIMIT 3'; $query = mysql_query($sql); $donnees = mysql_fetch_array($query); // Ici on exploite la 1ère ligne et le pointeur est déplacé sur la seconde while( $ligne = mysql_fetch_array($query) ) // n'affichera que 2 résultats { // Code }Si tu as réellement besoin d'utiliser une première fois mysql_fetch_array(), il faut que tu déplaces le pointeur sur la 1ère ligne avec mysql_data_seek().