[PHP] affichage dans une <div>

Résolu/Fermé
Utilisateur anonyme - 22 mars 2008 à 18:26
croy Messages postés 453 Date d'inscription samedi 19 janvier 2008 Statut Membre Dernière intervention 23 octobre 2012 - 23 mars 2008 à 12:39
Bonjour,

j'ai un petit souci avec mon code php. Je voudrais afficher mon menu codé dans menu.php dans une div qui est dans index.php. Je vous laisse mon code parce que je ne trouve pas mon erreur.

<?php $menus=array(
		    'menu'=>'menu',
		    'menu_com' => 'menu_com'
		  );
	?>

<div id="menu">
		<?php
			if(isset($_GET['haut']) && array_key_exists($_GET['haut'],$menus))
                include $menus[$_GET['menu']].'.php';
             else
                echo"ca marche pas";
		?>
	</div>
A voir également:

7 réponses

Enax Messages postés 203 Date d'inscription lundi 11 février 2008 Statut Membre Dernière intervention 16 mars 2010 145
23 mars 2008 à 11:11
C'est pour ça que je lui pose la question. Mais vu que son isset et son array_key_exists portent tout deux sur $_GET['haut'], ça me semblerait logique. Ou l'inverse : les $_GET['haut'] à remplacer par $_GET['menu']
1
Utilisateur anonyme
23 mars 2008 à 11:17
Comme dit plus haut j'ai écrit des fromulaires et ses deux versions fonctionnent. C'est ce qui me fait dire que c'est bien dans le formulaire que le pb semble se passer.
j'ai changer aussi la method du from en POST et pas en GET mais cela ne doit pas gêner.
0
Utilisateur anonyme
22 mars 2008 à 18:49
Bonsoir,

si tu ajoutes :
print_r($_GET); echo "<br>";
devant ton if tu verras que ton $_GET est vide la question à se poser est pourquoi ?
0
Utilisateur anonyme
22 mars 2008 à 18:51
et bien je la pose lol
parce que ca marche tres bien avec ma div centre et mon index

merci de ta réponse
0
Salut,
Je propose juste un truc pas sûr du tout(je suit pas bon en php) mais tu perds rien à tenter:
Peut être le include aime pas la concaténation et faire comme ça.
$url=$menus[$_GET['menu']].'.php';
include $url;
echo $url; // pour voir si ça vient de là

M'enfin je voit pas trop pourquoi mais bon parfois suffit d'un rien.
Voire:
$menus[$_GET['menu']].".php";
0
Utilisateur anonyme
23 mars 2008 à 00:37
<?php
		$pages=array(
		   'accueil'=>'accueil',
		   'epreuve'=>'epreuve',
		   'construction'=>'construction',
		   'connexion'=>'connexion' ,
		   'indispo'=>'indispo' ,
		   'inscrire' => 'inscrire'
		);


if(isset($_GET['page']) && array_key_exists($_GET['page'],$pages))
                include $pages[$_GET['page']].'.php';
             else
                include 'accueil.php';


alors je comprends pas tout parce que ce code marche alors que l'autre qui est sur le meme modele ne veut rien savoir...
0
Utilisateur anonyme
23 mars 2008 à 09:07
le dernier cas donné n'affiche -il pas toujours accueil .php ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
23 mars 2008 à 09:30
Bonjour,

J'ai écrit des trucs afin de tester ton code.
j'arrive à faire focntionner les deux.


j'en arrive à te poser quelques questions.
le formulaire qui renvoit sur ce script php utilise-t-il la methos GET ou POST ?
le name de select dans le fromulaire est-il bien haut ?
---------- formulaire ----------------
<html>
<form name='form' method='POST' action='menu.php'>
<select name='page'>
<option>menu</option>
<option>menu_com</option>

</select>
<input type='submit' value='OK'>
</form>
</html>
-----------------------------------------------------------------
<?php $menus=array(
'menu'=>'menu',
'menu_com' => 'menu_com'
);
?>

<div id="menu">
<?php
if(isset($_POST['page']) && array_key_exists($_POST['page'],$menus))
include $menus[$_POST['page']].'.php';
else
echo"ca marche pas";
?>
</div>
--------------------------------------------------------------------------


0
Enax Messages postés 203 Date d'inscription lundi 11 février 2008 Statut Membre Dernière intervention 16 mars 2010 145
23 mars 2008 à 10:34
Ca ne serait pas "include $menus[$_GET['haut']].'.php';" plutôt ?
0
Utilisateur anonyme
23 mars 2008 à 10:36
Bonjour,
cela dépend du name de la clause select dans le formulaire, et ça on ne l'a pas.
0
croy Messages postés 453 Date d'inscription samedi 19 janvier 2008 Statut Membre Dernière intervention 23 octobre 2012 114
23 mars 2008 à 12:39
Il est évident que le pb vient du formulaire en amont.

La suggestion de giheller dans le tout premier message (insérer un print_r) ne semble pas voir été suivie par sakura250006 et c'est dommage car elle permetrait de confirmer cela.

Le source du frmulaire amont n'a pas été fpurni non plus

Autant chercher une aiguille dans une botte de foin !
0