8768 sujets

Développement web côté serveur, CMS

Salut a tous,
j'ai un petit blem pour afficher un foreach avec son array dans une boucle while
array bob est du type :
$bob[]=array($surl,$sicon,$snom,$sidmenu);
affiche :
Array ( [0] => Array ( [0] => bleu.html [1] =>icon [2] => Accueil1 [3] => 1 ) [1] => Array ( [0] => bleu.html [1] =>icon [2] => Accueil2 [3] => 1 ) [2] => Array ( [0] => bleu.html [1] =>icon [2] => Actualité1 [3] => 2 ) [3] => Array ( [0] => bleu.html [1] =>icon [2] => Actualité2 [3] => 2 ) [4] => Array ( [0] => bleu.html [1] =>icon [2] => Galerie1 [3] => 8 ) [5] => Array ( [0] => bleu.html [1] =>icon [2] => Galerie2 [3] => 8 ) [6] => Array ( [0] => bleu.html [1] =>icon [2] => Contact1 [3] => 9 ) )
ensuite mon code :

$req = mysql_query("SELECT * FROM menu ORDER BY position ASC ") or die("Erreur SQL !"); 
while($data = mysql_fetch_array($req)) 
	{
	$id=$data['id'];
	$nom=$data['nom'];
	$url=$data['url'];		
	$icon=$data['icon'];				
	echo '<li';
		if ($nav_en_cours == $nom) 
		{
		echo ' id="en-cours"';
		}
		echo '><a href="'.$url.'">'.$icon.' '.$nom.'</a>';
			foreach ($bob as $valeur) {
			extract($valeur);
			if ($valeur[3]==$id){
			echo '<ul><li><a href="'.$valeur[0].'">'.$valeur[1].' '.$valeur[2].'</a></li></ul>';
			}
			}
			echo '</li>';
			}


mon souci c'est que mon foreach n'affiche que le dernier array a chaque fois Exemple: Dans Accueil il affiche uniquement Accueil2 alors que je voudrais qu'il affiche Accueil1 Accueil2 .


Comment dois je procéder pour que cela fonctionne.
Merci d'avance de votre aide.
Cdt
Modifié par spawns (31 Jul 2014 - 11:28)
Bonjour,

Utilise mysql_fetch_row qui demande moins de ressources que mysql_fetch_array pour accéder uniquement aux numéros de cellules (et non aux variables texte),

Ce que tu essaies de faire est étrange, es-tu sûr d'avoir bien compris comment on accédait aux données d'une table ?
Modifié par ohweb (01 Aug 2014 - 14:40)
oui j'ai compris comment on accède au donnée d'un array.
il me manque une condition if pour que cela fonctionne.

Merci de ton aide
Cdt