PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 18-05-2010 18:53:35

moana
Membre
Inscription : 18-05-2010
Messages : 2

L'inclusion de fichier

Salut,

Voila je suis débutant en PHP. Je me suis inspire du cours sur l'inclusion de fichier pour créer mon site. J'y ai fait quelques modification.

Et maintenant j'ai un petit souci.

Voila le code de ma page index.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="./acceuil/acceuil.css">
<title>Moana Service</title>
</head>
<body>
    <div id="bandeau">Ceci est le bandeau</div>
    <div id="menu_horitzontal">Clients Consommables <a href="index.php?page=Menu analogique">Analogique</a> <a href="index.php?page=Menu numerique">Numériques</a> Couleur Imprimantes Fax Mainteances Préventvies Pièces Détachées    </div>
       
<div id="menu_principal_vertical">
               
                <?php
   
                  // On définit le tableau contenant les pages autorisées
                  // ----------------------------------------------------
                  $pageOK = array('Menu numerique' => './menu_vertical/menu_numerique.php',
                                   'Menu analogique' => './menu_vertical/menu_analogique.php',);
               
                  // On teste que le paramètre d'url existe et qu'il est bien autorisé
                  // -----------------------------------------------------------------
                   if ( (isset($_GET['page'])) && (isset($pageOK[$_GET['page']])) ) {
                    include($pageOK[$_GET['page']]);
                    }else {
                include('./menu_vertical/menu_vertical.php');   // Page par défaut quant elle n'existe pas dans le tableau
                  }
                ?>              
   
            



    </div>
    <div id="contenu">
                   
                <?php
   
                  // On définit le tableau contenant les pages autorisées
                  // ----------------------------------------------------
                  $pages = array('Tableau 1015' => './numerique/tableau_1015.php',
                                   'Tableau 1022' => './numerique/tableau_1022.php',);
               
                  // On teste que le paramètre d'url existe et qu'il est bien autorisé
                  // -----------------------------------------------------------------
                  if ( (isset($_GET['pages'])) && (isset($pages[$_GET['pages']])) ) {
                    include($pages[$_GET['pages']]);
                    }else {
                include('./acceuil/test.php');   // Page par défaut quant elle n'existe pas dans le tableau
                  }
                ?>
     
        </div>   
    <div id="pied_page">Ceci est le pied de page</div>
</body>
</html>

Tous mes liens fonctionnent très bien.Lorsque je clique sur le lien ./menu_vertical/menu_numerique.php' ou ./menu_vertical/menu_analogique.php'
ils s'affichent bien dans mon div id="menu_principal_vertical.

Ensuite lorsque je clique dans le menu ./menu_vertical/menu_numerique.php qui est dans mon d="menu_principal_vertical, il m'ouvre bien ma page ./numerique/tableau_1015.php dans mon div id="contenu.

Mais comment faire pour que ./menu_vertical/menu_numerique.php reste afficher quand je clique sur  ./numerique/tableau_1015.php.
Car dès je clique dessus il me recharge ma page d'acceuil :./menu_vertical/menu_vertical.php.

Je voudrais faire en sorte qu'à partir du moment ou j'ai clique sur un lien dans le id="menu_principal_vertical, la page d'acceuil ne se recharge pas tant que je ne l'ai pas demande.

Merci d'avance pour l'info.

Moana.

Hors ligne

#2 18-05-2010 19:57:12

Yannick
Membre
Inscription : 22-09-2009
Messages : 42

Re : L'inclusion de fichier

Je ne sais pas si j'ai bien compris ta démarche mais j'imagine qu'autoriser des pages de la sorte ne sert pas à grand-chose.
Moi aussi je fais des includes de page, mais je procède de la sorte:

1) si je n'ai pas de paramètre passé en URL (par les boutons de navigation), alors je décide de créer ce paramètre en lui attribuant la valeur de page d'accueil :

=> if (!isset($_GET['page']) { $_GET['page'] = 'accueil' ;}

2) ensuite je fais des includes grâce à la valeur de $_GET['page'] à laquelle j'appends le .php

=> include '$_GET['page']' . '.php';

Voilà c'est tout. Maintenant, comme je te l'ai dis plus haut, peut-être que tu as besoin d'avoir un accès plus sécurisé à tes pages et
c'est pourquoi tu vérifies les autorisations. En général ça se fait plutôt en passant par un système de session plutôt qu'en récupérant des valeurs d'un tableau.

Bonne soirée à toi.

Hors ligne

#3 18-05-2010 21:47:09

Jc
Membre
Lieu : Zillisheim - Alsace
Inscription : 15-04-2010
Messages : 1 629
Site Web

Re : L'inclusion de fichier

Bonjour,

Pour répondre à moanna, et comme dirait pierrot, pour mette à jour une partie de la page sans recharger la page, Ajax est ton amie. wink


POO PHP+Ajax en MVC avec PDO et Bases de données épaisses  : What else?

Hors ligne

#4 19-05-2010 04:40:34

moana
Membre
Inscription : 18-05-2010
Messages : 2

Re : L'inclusion de fichier

Salut,

Yannick j'ai teste ton code et il ne fonctionne pas chez moi.

Voila ce que j'ai mis dans mon id=menu_principal_vertical

<?php
   
                  // On définit le tableau contenant les pages autorisées
                  // ----------------------------------------------------
                  $pageOK = array('Menu numerique' => './menu_vertical/menu_numerique.php',
                                   'Menu analogique' => './menu_vertical/menu_analogique.php',
                                   'Acceuil'=>'./menu_vertical/menu_vertical.php,);

                   if (!isset($_GET['page']) { $_GET['page'] = 'Acceuil' ;}

                   include '$_GET['page']' . '.php';

                 ?>

et j'ai aussi mis ce meme code dans mon id=contenu avec:

                    <?php
   
                  // On définit le tableau contenant les pages autorisées

                   $pages = array('Tableau 1015' => './numerique/tableau_1015.php',
                                   'Tableau 1022' => './numerique/tableau_1022.php',
                                   'Page Test' =>'./acceuil/test.php, );

                            if (!isset($_GET['page']) { $_GET['page'] = 'Page Test' ;}

                   include '$_GET['page']' . '.php';

                 ?>

Voila si tu peux donner encore d'autres précisions.

Merci encore pour votre aide.

Moana.

Hors ligne

#5 19-05-2010 07:36:12

Alnoss
Modérateur absent
Lieu : 06 - PACA
Inscription : 11-05-2009
Messages : 541
Site Web

Re : L'inclusion de fichier

Discussion fermée ! MERCI de lire le mode d'emploi : quand on poste du code, on utilise les balises !


MERCI de lire le mode d'emploi avant de poster !!

Hors ligne

Pied de page des forums