Ressortir les select dans un tableau

Nouveau WRInaute
Bonjour,
Je suis débutant en php et je n’arrive a ressortir les variables d’un select dans un tableau.
Voila le problème :
J’ai dans une table d’enregistrement. Je veut trouver par exemple le ID du 5eme select et le ID du 4eme.. (les enregistrement ne se suivent pas par catégorie et il y a des nouveaux)
Code:
$recherche = “select*from $table where categories=’$cat’ order by date asc “;
$cherche = mysql_query($recherche);
$resultat = mysql_fetch_assoc($cherche);
La si je doit faire apparaître les valeur sur la page, pas de problème avec (while), mais pour trouver la valeur du 5eme ID et la mettre dans un tableau je bute.
Si quelqu’un à la solution !
Merci d’avance
 
WRInaute accro
rempli ton tableau au moment de la lecture de la table sql, ensuite tu auras tes champs indexés dans ton nouveau tableau

Code:
<?php
  $recherche = "select * from $table where categories='$cat' order by date asc ";
  while ($r = mysql_fetch_array($recherche)) { $tab[] = $r[0];  }
?>

et pour retrouver le cinquieme élément tu feras une simple recherche dans le tableau: echo $tab[4]; (4 parceque ca commence a partir de 0, et ca te donnera le 5eme élément)

Code:
echo $tab[4];
 
Nouveau WRInaute
Merci pour les reponses.
Je viens de tester ton code KOogar ,
mais quand on fin un
Code:
echo $tab[0];
on ne resort pas le premier mais le deuxieme de la table.
j'ai tester avec ASC et DESC, dans les deux cas le premier est disparue.
 
WRInaute accro
déclare le tableau avant de rentrer dans la boucle, en théorie le pointeur est a 0 par defaut, tu peux utiliser la fonction reset() pour replacer le pointeur au debut du tableau

Code:
<?php
 $tab = array();
 $recherche = "select * from $table where categories='$cat' order by date asc ";
  while ($r = mysql_fetch_array($recherche)) { $tab[] = $r['nom_du_champ'];  }
 print_r ($tab);
?>

tu peux aussi utiliser un compteur avec i comme label
Code:
<?php
 $tab = array();
 $i = 0;
 $recherche = "select * from $table where categories='$cat' order by date asc ";
  while ($r = mysql_fetch_array($recherche)) { $tab[$i] = $r['nom_du_champ'];  $i++; }
 print_r ($tab);
?>
 
WRInaute accro
et le mysql_query y compte pour du beurre ? :D

Montre nous tout le code concerné papy julio, ça tient pas la route.
 
Nouveau WRInaute
Voila la dernier code
Code:
  $result = "SELECT id FROM  $matable  where cle_cat='$cat' ORDER BY id DESC" ;
$recherchecat = mysql_query($result,$connect);		
 $tab = array();
 $i = 0;
  while ($r=mysql_fetch_array($recherchecat)){$tab[$i] = $r[id];  $i++;  }
echo $tab[0];echo "<br>";
echo $tab[1];echo "<br>";
echo $tab[2];echo "<br>";
Je viens de tester avec le dernier code et j'ai fait resortir tous les 'id' et il en manque 1(le premier').
 
Nouveau WRInaute
Si je fait:
Code:
  $result = "SELECT id FROM  $matable WHERE cle_cat='$cat'   ORDER BY id DESC limit 1" ;
$recherchecat = mysql_query($result,$connect);		
$idm =mysql_fetch_assoc($recherchecat); 
echo $idm['id'];
la je resort bien le premier.
 
WRInaute accro
Et la tu ressors aussi le premier ? J'ai juste modifié la requête par rapport à ton dernier exemple:

Code:
$result = "SELECT id FROM  $matable WHERE cle_cat='$cat'   ORDER BY id DESC" ;
$recherchecat = mysql_query($result,$connect);      
$idm =mysql_fetch_assoc($recherchecat);
echo $idm['id'];

fais un
Code:
echo '<pre>';
print_r($tab);
echo '</pre>';
avant et après la récupération des résultats pour voir ?
 
Nouveau WRInaute
Quand je fais
Code:
echo '<pre>';
print_r($tab);
echo '</pre>';
J'ai le meme probleme, il manque le premier ID.la liste est dans lordre.
 
Nouveau WRInaute
Eureka, je viens de trouver mon erreur,
J'avais laissé une ligne de code, en faite dans ma page c'etait comme ceci
Code:
$result = "SELECT id FROM  $matable  where cle_cat='$cat' ORDER BY id DESC" ;
$recherchecat = mysql_query($result,$connect);   
 $resultat = mysql_fetch_assoc($recherchecat)
$tab = array();
$i = 0;
  while ($r=mysql_fetch_array($recherchecat)){$tab[$i] = $r[id];  $i++;  }
echo $tab[0];echo "<br>";
echo $tab[1];echo "<br>";
echo $tab[2];echo "<br>";
et quand j'enleve
Code:
$resultat = mysql_fetch_assoc($recherchecat)
le premier id apparait!

Merci a tous, je pense que vous me reverrais bientot :wink:
 
WRInaute accro
Je t'ai pourtant demandé le code car c'était illogique ce que tu racontais ;) Je me demande bien ou t'as été chercher le code que tu nous as collé alors lol
 
Discussions similaires
Haut