cs_Cestmoi
Messages postés75Date d'inscriptionlundi 1 avril 2002StatutMembreDernière intervention 3 juin 2012
-
4 mars 2007 à 05:38
cs_Cestmoi
Messages postés75Date d'inscriptionlundi 1 avril 2002StatutMembreDernière intervention 3 juin 2012
-
4 mars 2007 à 15:25
Bonjour, j'ai un problème que je n'ai pas d'habitude de voir, puisque j'utilise ce bout de code à chaque fois.
En effet, ma requete me retourne par ex 4 enregistrements, et bien seules les 3 dernieres lignes s'affichent ($nbre_rslt -1).
Voici le bout mon code incriminé :
<?
$sql "SELECT * FROM `tbl_planif` WHERE `ID_struc` $ID_struc ORDER BY `date_debut` ASC";
$req = mysql_query($sql) or die('Erreur SQL !
'.$sql.'
'.mysql_error());
$data = mysql_fetch_array($req);
$nbre_rslt = mysql_num_rows($req);
if ($nbre_rslt != 0)
{
while($data = mysql_fetch_array($req))
{
echo $data['ID_planif'];
}
}
else
{
echo "Aucun enregistrement";
}
?>
PS: Désolé, mais j'ai pas trouvé le bouton "code".
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 4 mars 2007 à 09:42
Hello,
$data = mysql_fetch_array($req); // ICI, tu vas chercher le 1er jeu de résultat, et tu déplaces le pointeur sur la 2d jeu (2ème ligne).
$nbre_rslt = mysql_num_rows($req);
if ($nbre_rslt != 0)
{
while($data = mysql_fetch_array($req)) // là tu vas chercher la suite, donc à partir de la 2de ligne.
{
echo $data['ID_planif'];
}
}
else
{
echo "Aucun enregistrement";
}
En clair, tu as un $data = mysql_fetch_array($req); en trop.