Menu dynamique
glodybiss
Messages postés
509
Statut
Membre
-
glodybiss Messages postés 509 Statut Membre -
glodybiss Messages postés 509 Statut Membre -
Bonjour,
J'aimerai afficher un menu mais il y a une erreur que je n'arrive pas à comprendre veillez s'il vous plait vérifer et m'aider. Merci.
Voici les erreurs :
Voici l'arborescence dans la base des données :
Voici le code :
J'aimerai afficher un menu mais il y a une erreur que je n'arrive pas à comprendre veillez s'il vous plait vérifer et m'aider. Merci.
Voici les erreurs :
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\wamp\www\internetService\menu_page2.php on line 19
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\internetService\menu_page2.php on line 22
Voici l'arborescence dans la base des données :
|------ |Colonne|Type|Null|Défaut |------ |//**id**//|int(11)|Non| |parent_menu|int(11)|Non| |menu|varchar(100)|Non| |url|varchar(255)|Non| |titre|varchar(200)|Non| |description|varchar(200)|Non| |mot_cles|varchar(200)|Non| == Contenu de la table menu_site |1|1|Accueil| | | | |2|1|Site manage| | | | |3|1|Clients| | | | |4|1|Agents| | | | |5|1|Myaccount| | | | |6|2|Nouveau site| | | | |7|2|Afficher Site| | | | |8|2|Paramèttre Site| | | | |9|2|Tous les clients| | | | |10|2|Recemments ajouter| | | | |11|2|Nouveau client| | | | |12|2|Paramèttre client| | | | |13|2|Liste Agents| | | | |14|2|Modifier agent| | | | |15|2|Ajouter agent| | | | |16|2|Modifier infos| | | | |17|2|Afficher infos| | | | |18|2|Supprimer compte| | | |
Voici le code :
<?php
// information pour la connection à le DB
$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'cybernetdata';
// connection à la DB
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());
$query = "SELECT * FROM 'menu_site' WHERE parent_menu=0";
$result = mysql_query($query);
$n1=mysql_num_rows($result);
$i=0;
echo '<ul>';
while ($row = mysql_fetch_array($result)) {
$sql = "SELECT * FROM 'menu_site' WHERE id_parent =".$row['menu']."";
$sousmenu = mysql_query($sql);
$n2=mysql_num_rows($sousmenu);
echo($i!=1)? '<li>':'<li class="last">';
if($n2>0){
echo'<a href="'.$row['url'].'" class="parent"><span>'.$row['menu'].'</span></a>';
echo'<div class="columns two">';
echo '<ul class="one">';
while ($ssmenu = mysql_fetch_array($sousmenu)) {
echo '<li><a href="'.$ssmenu['url'].'"><span>'.$ssmenu['menu'].'</span></a></li>';
}
echo '</ul>';
echo '</div>';
}
else{
echo ' <a href="'.$row['url'].'"><span>'.$row['menu'].'</span></a>';
}
echo '</li>';
$i++;
}
echo '</ul>';
?>
3 réponses
-
Bonjour,
Tu as une erreur dans ta requête ici :$sql = "SELECT * FROM 'menu_site' WHERE id_parent =".$row['menu']."";
Trop de concaténation tue la concaténation ;) -
$query = "SELECT * FROM 'menu_site' WHERE parent_menu=0";
si c'est des simples quotes (touche 4 du clavier) qui entourent ton nom de table, c'est faux -
Merci à tous j'ai trouvé une solution le menu s'affiche maintenant mais il y a un problème quand j'essaie d'afficher il m'affiche seulement les parents sur le menu déroulant quand je place la souris au lieu d'afficher les enfants du menu (sous menu)
Voci les codes
<?php // information pour la connection à le DB $host = 'localhost'; $user = 'root'; $pass = ''; $db = 'cybernet'; // connection à la DB $link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() ); mysql_select_db($db) or die ('Erreur :'.mysql_error()); $query = "SELECT * FROM 'menu_site' WHERE parent_menu=1"; $result = mysql_query($query); $n1=mysql_num_rows($result); $i=0; echo '<div id="menu">'; echo '<ul>'; while ($row = mysql_fetch_array($result)) { $sql = "SELECT * FROM 'menu_site' WHERE parent_menu=".$row['1'].""; $sousmenu = mysql_query($sql); $n2=mysql_num_rows($sousmenu); echo($i!=1)? '<li>':'<li>'; if($n2>0){ echo'<a href="'.$row['url'].'"><span>'.$row['menu'].'</span></a>'; echo '<ul>'; while ($ssmenu = mysql_fetch_array($sousmenu)) { echo '<li><a href="'.$ssmenu['url'].'">'.$ssmenu['menu'].'</a></li>'; } echo '</ul>'; } else{ echo ' <a href="'.$row['url'].'"><span>'.$row['menu'].'</span></a>'; } echo '</li>'; $i++; } echo '</ul>';echo '</div>'; ?>