Bonjour à tous et à toutes,
Je viens vous demander de l'aide aujourd'hui pour un problème d'affichage d'un menu.
J'espère que des courageux pourrons m'aider car je l’avoue lire tous ce qui va suivre et chiant mais j'ai bon espoir que quelqu'un m'aide.
Voici mon problème :
J'ai un menu en html qui fonctionne très bien et je voudrais maintenant le remplir avec les infos qui sont dans ma bdd.
J'ai 4 tables. la table menu, la table rubrique, la table sous menu (les sous onglets vont s'afficher sous les rubriques) et la table image.
table menu :
Nom : menu.jpg
Affichages : 113
Taille : 40,3 Ko

Table rubriques
Nom : rubrique.jpg
Affichages : 104
Taille : 48,0 Ko

table sous menu
Nom : sous_menu.jpg
Affichages : 110
Taille : 126,6 Ko

images
Nom : image.jpg
Affichages : 108
Taille : 78,6 Ko

Voici le menu en html qui fonctionne bien
Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<header class="dark">
		  <nav role="navigation">
			<a href="javascript:void(0);" class="ic menu">
			  <span class="line"></span>
			  <span class="line"></span>
			  <span class="line"></span>
			</a>
			<a href="javascript:void(0);" class="ic close"></a>
			<ul class="main-nav">
			  <li class="top-level-link">
				<a><span>Accueil</span></a>      
			  </li> 
 
			  <li class="top-level-link">
				<a class="mega-menu"><span>Optique</span></a>
				<div class="sub-menu-block">
				  <div class="row">
					<div class="col-md-4 col-lg-4 col-sm-4">
					  <h2 class="sub-menu-head">Femme</h2>
					  <ul class="sub-menu-lists">
						<li><a>Christian Lacroix</a></li>
						<li><a>Ray-Ban</a></li>
						<li><a>Persol</a></li>
						<li><a>Vuarnet</a></li>
					  </ul>           
					</div>
					<div class="col-md-4 col-lg-4 col-sm-4">
					  <h2 class="sub-menu-head">Homme</h2>
					  <ul class="sub-menu-lists">
					  <li><a>Christian Lacroix</a></li>
						<li><a>Ray-Ban</a></li>
						<li><a>Persol</a></li>
						<li><a>Vuarnet</a></li>
					  </ul>
					</div>
				  </div>
 
				  <div class="row banners-area">
				  <h2 class="sub-menu-head">Nouveauté</h2>
					<div class="col-md-6 col-lg-6 col-sm-6">
					  <img src="https://opticdeluxe.fr/images/produits/gr/1612477419-lunettes-optique-ray-ban-rb-5371-2000-black.jpg" width="100%;">
					</div>
					<div class="col-md-6 col-lg-6 col-sm-6">
					  <img src="https://opticdeluxe.fr/images/produits/gr/1600781724-lunettes-optiques-christian-lacroix-cl-1082-prescription-glasses-165---brown.jpg" width="100%;">
					</div>
				  </div>
 
				</div>
			  </li>
			  <li class="top-level-link">
				<a class="mega-menu"><span>Solaire</span></a>
				<div class="sub-menu-block">
				  <div class="row">
					<div class="col-md-4 col-lg-4 col-sm-4">
					  <h2 class="sub-menu-head">Femme</h2>
					  <ul class="sub-menu-lists">
						<li><a>Christian Lacroix</a></li>
						<li><a>Ray-Ban</a></li>
						<li><a>Persol</a></li>
						<li><a>Vuarnet</a></li>
					  </ul>           
					</div>
					<div class="col-md-4 col-lg-4 col-sm-4">
					  <h2 class="sub-menu-head">Homme</h2>
					  <ul class="sub-menu-lists">
						<li><a>Christian Lacroix</a></li>
						<li><a>Ray-Ban</a></li>
						<li><a>Persol</a></li>
						<li><a>Vuarnet</a></li>
					  </ul>
					</div>
				  </div>
 
				  <div class="row banners-area">
				  <h2 class="sub-menu-head">Nouveauté</h2>
					<div class="col-md-6 col-lg-6 col-sm-6">
					  <img src="https://opticdeluxe.fr/images/produits/gr/1612482126-lunettes-solaires-persol-3164-2457-1.jpg" width="100%;">
					</div>
					<div class="col-md-6 col-lg-6 col-sm-6">
					  <img src="https://opticdeluxe.fr/images/produits/gr/1607092135-lunettes-chloe-femme-solaire-ce-curtis-162s-742.jpg" width="100%;">
					</div>
				  </div>
 
				</div>
			  </li>
			  <li class="top-level-link">
				<a><span>Contact</span></a>      
			  </li>
			</ul> 
		  </nav>
		</header>

et voici mon interpolation avec les tables

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
<?php
$req_menu_hor = $bdd->prepare("SELECT id, nom_onglet, lien_onglet FROM menu WHERE auth_view <= :auth ORDER BY ordre_aff ASC");
$req_menu_hor->bindValue('auth', $level, PDO::PARAM_INT);
try {
		$req_menu_hor->execute();
	}
catch (PDOException $e)
	{
	   echo 'Error : ' . $e->getMessage();
	   die();
	}
echo'<div id="header">
	<header class="dark">
		<nav role="navigation">
			<a href="javascript:void(0);" class="ic menu">
				<span class="line"></span>
				<span class="line"></span>
				<span class="line"></span>
			</a>
			<a href="javascript:void(0);" class="ic close"></a>
				<ul class="main-nav">';
					while ($res_menu_hor = $req_menu_hor->fetch())
						{
							echo'<li class="top-level-link"><a';
							$recherche_rub = $bdd->prepare("SELECT rubrique_id, nom_rubrique, num_id_menu FROM rubrique_menu 
							WHERE num_id_menu = :id_menu AND auth_view_rubrique <= :auth_rub ORDER BY ordre_rubrique ASC");
							$recherche_rub->bindValue('id_menu', $res_menu_hor['id'], PDO::PARAM_INT);
							$recherche_rub->bindValue('auth_rub', $level, PDO::PARAM_INT);
							try {
									$recherche_rub->execute();
									$total_rub = $recherche_rub->rowCount();
								}
							catch (PDOException $e)
								{
								   echo 'Error : ' . $e->getMessage();
								   die();
								}
							if ($total_rub > 0)
								{
									echo ' class="mega-menu"';
								}
							echo'><span>'.$res_menu_hor['nom_onglet'].'</span></a>';
							if ($total_rub > 0)
								{
									echo'<div class="sub-menu-block">';
											while ($res_rub = $recherche_rub->fetch())
												{
													$rech_img = $bdd->prepare("SELECT lien_img, lien_dest FROM image_menu 
													WHERE id_rub_cor = :num_rub AND auth_view_img <= :auth_sous_ong ORDER BY ordre_aff_img ASC");
													$rech_img->bindValue('num_rub', $res_rub['rubrique_id'], PDO::PARAM_INT);
													$rech_img->bindValue('auth_sous_ong', $level, PDO::PARAM_INT);
													try {
															$rech_img->execute();
															$total_img = $rech_img->rowCount();
														}
													catch (PDOException $e)
														{
															echo 'Error : ' . $e->getMessage();
															die();
														}
													if ($total_img > 0)
														{
															echo'<div class="row banners-area">';
															echo'<h2 class="sub-menu-head">'.$res_rub['nom_rubrique'].'</h2>';
																while ($res_img = $rech_img->fetch())
																	{
																		echo'<div class="col-md-6 col-lg-6 col-sm-6"><img src="'.$res_img['lien_img'].'" width="100%;"></div>';
																	}
																echo'</div>';
														}
													else
														{
															echo'<div class="row">';
															echo'<div class="col-md-4 col-lg-4 col-sm-4">';
															echo'<h2 class="sub-menu-head">'.$res_rub['nom_rubrique'].'</h2>';
														}
													$rech_img->closeCursor();
 
													$rech_sous_ong = $bdd->prepare("SELECT nom_s_ong, lien_s_ong FROM sous_menu 
													WHERE cor_id_rub = :num_id_rub AND auth_view_s <= :auth_s_ong ORDER BY ordre_s_ong ASC");
													$rech_sous_ong->bindValue('num_id_rub', $res_rub['rubrique_id'], PDO::PARAM_INT);
													$rech_sous_ong->bindValue('auth_s_ong', $level, PDO::PARAM_INT);
													try {
															$rech_sous_ong->execute();
															$total_s_ong = $rech_sous_ong->rowCount();
														}
													catch (PDOException $e)
														{
														   echo 'Error : ' . $e->getMessage();
														   die();
														}
													if ($total_s_ong > 0)
														{
 
																echo '<ul class="sub-menu-lists">';
																	while ($res_sous_ong = $rech_sous_ong->fetch())
																		{
																			echo'<li><a>'.$res_sous_ong['nom_s_ong'].'</a></li>';
																		}
																echo '</ul>';
														}
													echo'</div>';
													echo'</div>';
 
													$rech_sous_ong->closeCursor();
												}
 
									echo'</div>';
								}
							$recherche_rub->closeCursor();
							echo'</li>';
 
						}
 
echo'</ul> 
		  </nav>
		</header></div>';
$req_menu_hor->closeCursor();
?>
Le problème c'est que j'ai des </div> pas bien placés et les </li> en trop du coup l'affichage n'est pas top.
Un grand merci à ceux qui prendrons la peine de m'aider.