PHP|Débutant :: Forums

Advertisement

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

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

#1 10-11-2009 15:00:21

milkaaaaaa
Membre
Inscription : 10-11-2009
Messages : 8

Includes en php qui ne fonctionnent pas

Bonjour,

J'essaye vainement d'améliorer mes pages en insérant les différentes parties avec includes, mais je n'arrive à rien.
Toutes les pages fonctionnent séparément, mais lorsque j'essaye la page "accueil.php", il n'y a que le contenu, et pas le haut, ni le menu, ni le bas.

Voici ma page "haut.php" :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "[url]http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd[/url]">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>Bienvenue sur blabla !</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
     <link rel="stylesheet" media="screen" type="text/css" title="Design" href="design.css" />
   </head>

<body>
<div id="Header">
    <!-- logo, bannière, identification, enregistrement -->
    blabla
</div>

Ma page "menu.php" :

<div id="Menu">
    <!-- menu -->
    <div class="Sous_menu">
      <p>SousMenu1</p>
      <ul class="carre">
         <li>categ1</li>
         <li>categ2</li>
         <li>categ3</li>
      </ul>

    </div>
 
     <div class="Sous_menu">
        <p>SousMenu2</p>
      <ul class="carre">
         <li>categ1</li>
         <li>categ2</li>
         <li>categ3</li>
      </ul>
     </div>
  </div>

Ma page "bas.php" :

<div id="Footer">
    <!-- auteur, copyrights, contact -->
</div>

</body>
</html>

Ma page d'accueil "accueil.php" :


<div id="Header">
<?php
include("haut.php");
?>
</div>

<div id="Menu">
<?php
include("menu.php");
?>
</div>

<div id="Contenu">
  <!-- contenu de la page -->
  <p>blabla</p>
</div>

<div id="Footer">
<?php
include("bas.php");
?>
</div>

Et ma feuille de style "design.css" :


body
{
   width: 760px;
   margin: auto;
   margin-top: 20px;
   margin-bottom: 20px;    
   background-color: #000000;
   
}


#Header
{
   width: 750px;
   height: 150px;
   margin-bottom: 10px;
   border: 2px solid #990066;
   font-size: 12px;
   color: #FF006E;

}

#Menu
{
   float: left;
   width: 120px;
   border: 2px solid #990066;
   height: 465px;
}

.carre
{
   list-style-type: square;
   color: #FFFFFF;
}

.Sous_menu
{
   background-color: #626262;
   border: 2px solid black;
   margin-bottom: 20px;
}

#Contenu
{
  margin-left: 135px;
  width: 625px;
  height: 455px;
  color: #FFFFFF;
  font-family: Arial, "Arial Black", "Times New Roman", Times, serif;
  text-align: center;
  border: 2px solid #990066;
  padding-top: 10px;
  margin-bottom: 10px;
 
}

#Footer
{
  width: 760px;
  height: 100px;
  padding-top: 5px;
  padding-bottom: 5px;
  color: #FFFFFF;
  font-family: Arial, "Arial Black", "Times New Roman", Times, serif;
  text-align: center;
  border: 2px solid #990066;
}


Pouvez-vous m'aider ?

Merci d'avance.

Hors ligne

#2 10-11-2009 15:21:00

Maljuna Kris
Infantimigulo
Lieu : Douarnenez 29100 Breizh Izel
Inscription : 08-05-2009
Messages : 2 453
Site Web

Re : Includes en php qui ne fonctionnent pas

Saluton,
Dans accueil.php  tu fais appel à tes includes à l'intérieur de <div>, lesquelles <div> sont déjà présentes et ont le même id dans les includes.
En outre, dans haut.php, tu incorpores une déclaration de type de document, l'en-tête html, etc dans une <div> html.

Tout cela doit faire un sacré pataquès dans le navigateur.


Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy

Hors ligne

#3 10-11-2009 15:42:06

milkaaaaaa
Membre
Inscription : 10-11-2009
Messages : 8

Re : Includes en php qui ne fonctionnent pas

Donc premièrement, j'ai enlevé les div de la page d'accueil :


<?php
  include("haut.php");
?>

<?php
  include("menu.php");
?>

<div id="Contenu">
  <!-- contenu de la page -->
  <p>blabla</p>
</div>

<?php
  include("bas.php");
?>

Même résultat ...

Ensuite, il faut que je change l'entête par rapport au type ? Je ne suis pas sûre de bien comprendre.

Hors ligne

#4 10-11-2009 15:52:52

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

Re : Includes en php qui ne fonctionnent pas

le but est AUSSI que le contenu soit en page dynamique wink


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

Hors ligne

#5 10-11-2009 15:59:13

milkaaaaaa
Membre
Inscription : 10-11-2009
Messages : 8

Re : Includes en php qui ne fonctionnent pas

Je pense que c'est encore un autre problème, non ?
J'aurai juste la page d'accueil qui ressemblera à ça, et après, selon la page demandée, je contenu changera.
Donc dès qu'on cliquera sur un lien du menu (il n'y en a pas encore), une autre page sera affichée et le contenu sera affiché selon le lien qui a été cliqué.
Ai-je tout compris ?

Pour en revenir au haut de ma page, il y a un conflit entre l'entête HTML et le contenu/extention PHP ? Comment puis-je faire pour résoudre ça ?

Dernière modification par milkaaaaaa (10-11-2009 16:39:49)

Hors ligne

#6 10-11-2009 16:47:51

Maljuna Kris
Infantimigulo
Lieu : Douarnenez 29100 Breizh Izel
Inscription : 08-05-2009
Messages : 2 453
Site Web

Re : Includes en php qui ne fonctionnent pas

Personnellement j'aurais plutôt vu ça comme ceci

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "[url]http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd[/url]">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>Bienvenue sur blabla !</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
     <link rel="stylesheet" media="screen" type="text/css" title="Design" href="design.css" />
   </head>
    <body>
<?php
include 'haut.php';
include("menu.php");
?>
<div id="Contenu">
  <!-- contenu de la page -->
  <p>blabla</p>
</div>
<?php
include("bas.php");
?>
    </body>
</html>

en modifiant les fichiers haut.php et bas.php comme il se doit


Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy

Hors ligne

#7 10-11-2009 16:59:19

milkaaaaaa
Membre
Inscription : 10-11-2009
Messages : 8

Re : Includes en php qui ne fonctionnent pas

Désolée, je suis vraiment débutante en langage web et je ne m'aide que de sites web.

Je ne vois pas la différence entre :

include 'haut.php';

et :

include("menu.php");

Est-ce que je peux laisser les balises div avec les différents id dans chaque page inclue ? (est-ce que le css sera appliqué ?)

Et si je mets le bloc d'entête dans cette page, il faudra que je le mette dans toutes mes autres pages, y a-t-il un moyen pour le prendre en compte dans la page inclue ?

Dernière modification par milkaaaaaa (10-11-2009 16:59:39)

Hors ligne

#8 10-11-2009 17:05:56

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

Re : Includes en php qui ne fonctionnent pas

Re,

Tout d'abord, tente d'etre plus clair dans tes propos... ca aidera grandement à la compréhension wink
Ensuite non, aucune différence entre les 2 syntaxes de MK... Ce n'est que 2 façons différentes d'arriver au même résultat.
Enfin, Si tu mets tes balises sur la page "structure", tu n'auras pas a les répéter dans chacune de "contenu"


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

Hors ligne

#9 12-11-2009 11:01:06

milkaaaaaa
Membre
Inscription : 10-11-2009
Messages : 8

Re : Includes en php qui ne fonctionnent pas

J'ai ajouté la première partir jusqu'à <body> dans ma page d'accueil et supprimé les premiers <div> des pages inclues (haut, menu et bas). J'ai laissé les autres <div> du menu pour les sous-menus. A part le css qui est maintenant appliqué au contenu, rien d'autre n'est affiché sur ma page d'accueil. Toujours pas de trace des pages haut, bas et menu.

Hors ligne

#10 12-11-2009 12:50:17

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : Includes en php qui ne fonctionnent pas

Et qu'affiche le code généré de ton explorateur internet lorsque tu affiches la page ?
Un html vide ou bien tu as bien tes includes qui sont affichés ?

Hors ligne

#11 12-11-2009 12:52:16

milkaaaaaa
Membre
Inscription : 10-11-2009
Messages : 8

Re : Includes en php qui ne fonctionnent pas

Ben toutes les pages s'affichent bien séparément, mais la page d'accueil qui inclue les autres n'affiche que le contenu, mais pas les pages inclues.
En gros, je n'aurai pas les includes, ça ne changerait rien ...

Hors ligne

#12 12-11-2009 12:54:40

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : Includes en php qui ne fonctionnent pas

En gros tu ne vois pas le code de menu.php, haut.php et bas.php si je comprends bien ?
(Je pensais avoir compris ton problème mais ta réponse m'a fait douté sur le coup...)

Hors ligne

#13 12-11-2009 13:04:00

milkaaaaaa
Membre
Inscription : 10-11-2009
Messages : 8

Re : Includes en php qui ne fonctionnent pas

Oui c'est bien ça. Un problème de paramétrage ..?

Hors ligne

#14 12-11-2009 13:10:59

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : Includes en php qui ne fonctionnent pas

Bah possible, je ne m'y connais pas au niveau configuration, je dois dire qu'à part la programmation je connais rien à Apache...
Mais si le code généré ne contient pas le contenu de tes fichiers il y a un soucis avec la fonction include, surtout si tu n'as aucune erreur affichée et ce même dans le code...

Hors ligne

#15 12-11-2009 13:30:46

milkaaaaaa
Membre
Inscription : 10-11-2009
Messages : 8

Re : Includes en php qui ne fonctionnent pas

Ben voilà mes fichiers, vous pouvez essayer chez vous, peut-être que c'est juste mon pc qui n'a pas de volonté ^^'

accueil.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "[url]http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd[/url]">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>Bienvenue sur blabla !</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
     <link rel="stylesheet" media="screen" type="text/css" title="Design" href="design.css" />
   </head>
    <body>
<?php
include 'haut.php';
include("menu.php");
?>
<div id="Contenu">
  <!-- contenu de la page -->
  <p>blabla</p>
</div>
<?php
include("bas.php");
?>
    </body>
</html>

haut.php :

<div id="Header">
    <!-- logo, bannière, identification, enregistrement -->
    blibli
</div>

bas.php :

<div id="Footer">
    <!-- auteur, copyrights, contact -->
</div>

menu.php :

<div id="Menu">
<!-- menu -->
    <div class="Sous_menu">
      <p>SousMenu1</p>
      <ul class="carre">
         <li>categ1</li>
         <li>categ2</li>
         <li>categ3</li>
      </ul>

    </div>
 
     <div class="Sous_menu">
        <p>SousMenu2</p>
      <ul class="carre">
         <li>categ1</li>
         <li>categ2</li>
         <li>categ3</li>
      </ul>
     </div>
</div>

Et mon CSS n'a pas changé. Tous mes fichiers sont dans le même sous-dossier dans www.
Et donc au final j'ai juste le cadre du contenu qui s'affiche avec le bon design, avec écrit "blabla" pour l'exemple.

Dernière modification par milkaaaaaa (14-11-2009 11:37:02)

Hors ligne

Pied de page des forums