Bonjour,
Sur mon site, j'affiche un menu (en tableau array) où les liens s'affichent dans une div que j'appelle "frame".
A l'affichage d'une page dans la div frame, si celle-ci contient un lien, je voudrais afficher le résultat du lien dans cette même frame, et non une autre fenêtre.
Exemple : j'affiche la page "livredor" dans la div frame. Cette page comporte un lien qui mêmne à "saisie.php", que je voudrais afficher dans cette même frame si je clic dessus.
Voilà où j'en suis :
Code :
- <?php
- $pages = array (
- 'bienvenue'=>'bienvenue_FR.htm',
- 'historique'=>'histo_FR.htm',
- 'livredor' => array ('livredor_FR.php', 'saisie' => 'saisie.php'), 'pour nous contacter'=>'contact_FR.htm'
- );
- ?>
- <body>
- <div class="menu2">
- <ul>
- <?php
- foreach($pages as $nom => $page)
- {
- if(isset($_GET['page']) AND $_GET['page'] == $nom) // Page a afficher = Lien a afficher
- $class = "courant";
- else
- $class = "bouton";
- printf("<a class=\"%s\" href=\"index_FR.php?page=%2\$s\">%2\$s</a>\n", $class, $nom); //---------affichage du menu
- }
- ?>
- </ul>
- </div>
- <div class="frame">
- <?php
- if(isset($_GET['page']) && array_key_exists($_GET['page'],$pages))
- include $pages[$_GET['page']];
- if (($_GET['page']) == livredor)
- {
- include ($pages[$_GET['page'][0]]);
- }
- else
- include 'bienvenue_FR.htm';
- ?>
|
Là, si je veux ouvrir la page "livredor", j'ai le msg :
Warning: include(Array) [function.include]: failed to open stream
Warning: include() [function.include]: Failed opening 'Array' for inclusion (include_path='.;C:\php5\pear')
Warning: include() [function.include]: Failed opening '' for inclusion (include_path='.;C:\php5\pear')
sur la ligne de
include $pages[$_GET['page']]; .
Je suppose que la déclaration de mon sous-tableau n'est pas bonne ?
Et à dire franchement, je n'arrive plus à m'en sortir .... Alors si vous pouviez me donner un coup de main ...
Merci
Message édité par t671 le 04-06-2010 à 09:59:50