Je débute dans les tableau

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Je débute dans les tableau

par Ryle » 19 déc. 2006, 10:44

Le soucis que tu rencontres dans ton while, c'est qu'à chaque itération tu écrases la valeur de $navigation. Pour éviter cela il te faut effectivement passer par un tableau (ou afficher tes liens au fur et à mesure) et stocker chaque valeur dans une cellule différente.

Il y a plusieurs façon de faire, mais la plus simple reste celle-ci :
$tableau = array(); // on déclare la variable navigation comme étant un tableau.
while (...) {
  $tableau[] = ... ; // le fait de mettre les crochets ajoute automatiquement la valeur dans la prochaine cellule du tableau
}
Sinon, si tu préfères, tu peux aussi passer par des fonctions comme array_push() pour ajouter une nouvelle cellule à la fin du tableau :) Ca revient au même, c'est peut être un peu plus explicite mais c'est aussi plus lourd de passer par une fonction...

Un p'tit truc utile, tu peux utiliser la fonction print_r() pour voir le contenu de ton tableau (valeur et index)

Une fois ton tableau construit, il te faut maintenant le lire avec une boucle. Pour cela tu peux utiliser un for()
for($i=0; $i<count($tableau); $i++) { // pour $i allant de 0 au nb d'éléments du tableau 
  echo $tableau[$i]; // affiche l'élément $i
}
voire un foreach()
foreach($tableau as $elt) { // pour chaque element du tableau, on le stocke dans $elt
  echo $elt; // affiche l'élément $elt
}

Je débute dans les tableau

par emmiedax » 18 déc. 2006, 23:32

Bonjour à tous er merci par avance de votre aide. J'ai un petit problème pour récupérer un nombre de variable indeterminé àl'avanve:
	if(isset($id_pere)){
	
		$selection_barnav = "SELECT id,place,titre FROM texte_accueil WHERE id_pere=$id_pere ORDER BY place";
		$requete_barnav = mysql_query($selection_barnav) or die($requete_echouee);
		while($resultat_barnav = mysql_fetch_object($requete_barnav)){
		
			$navigation = "<a href='".$page.".php?idArcticle=".$resultat_barnav->id."' class='barnav_simple'>  - ".$resultat_barnav->titre."</a></font>";

		}
La variable $id_pere étant un nombre déterminé par le lien.
Je cherche à récupérer la variable $navigation pour chaque réponse. Je pensais donc incrémenter un tableau.
Je fais cela car bans ma barnav :
<a href='qui.php' class='barnav'>Qui sommes nous ?</a><br>";
				 					if($id_pere==2){echo $navigation;}
				 					echo "
				 					<br>
Je voudrais donc qu'à cette endroit s'affiche autant de ligne que la base de données renvoie de réponse.
Comment puis faire.

Merci