Problème avec dossier parents (inclure page)

romaaaaaaaaaain09 -  
 le père -
Bonjour, je suis en pleine création de mon site web, et j'avais regroupé toutes mes pages dans le même dossier que ma page index.php. J'ai donc voulus organisé mon site ! Donc, j'ai crée plusieurs dossier (Menu, Navigation,..) Et j'incluais les pages "header.php" et "footer.php" dans toutes mes pages. Celles-ci se trouve dans le dossier "includes". j'ai donc écrit ceci dans mes pages : <?php include("../includes/header.php"); ?> et ça ne marche pas.

Ou est mon erreur ? Merci de m'aider....



A voir également:

6 réponses

le père
 
Puisque styles.css est à la racine de ton site, un <link href="/style.css" (sans les ..) marchera quelle que soit la page depuis laquelle tu l'appelles.
Attention, le include est exécuté par PHP sur le serveur, il fait appel au système de fichiers du serveur
alors que <link href="/style.css" est exécuté par le navigateur du client et fait appel à une URL . C'est très différent
1
zavenger Messages postés 811 Date d'inscription   Statut Membre Dernière intervention   161
 
Bonjour,
Il me semble que dans php.ini il y a un setting pour dire a partir de quelle localisation les includes sont autorisés (pour des raisons de securiité)
0
romaaaaaaaaaain09
 
je comprend pas...
0
zavenger Messages postés 811 Date d'inscription   Statut Membre Dernière intervention   161
 
sur ton serveur web, tu as un fichier qui definit les options d'execution de ton php (normalement php.ini). En particulier il y en a une qui dit "quels sont les include autorisés", pour que l'on ne puisse pas inserer du code dans ton site. Je pense que c'est cette option qu'il faut modifier.
0
romaaaaaaaaaain09
 
Je suis sous WAMP, je vais dans php puis php.ini, et là, il y a plein de ligne. Comme savoir la quelle c'est ?
0

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

Posez votre question
le père
 
bonjour

Ne touche pas à ton php.ini, il n'y est pour rien.
si tu ne t'es pas trompé dans les noms de dossiers (include avec ou sans s) ça devrait marcher si tous les répertoires dont tu parles sont bien directement des sous-répertoires de celui qui contenait ta page index.
Mais attention. Si tu fais un include d'un fichier A dans un fichier B qui est déjà lui-même inclus dans C le chemin doit être relatif au parent C et non pas à B
0
romaaaaaaaaaain09
 
Voici mon exemple :

RACINE (contient : dossier1, includes style.css et index.php)
includes (contient : header.php et footer.php)
Dossier1 (contient : test.php)
test.php (contient :
<?php include("../includes/header.php"); ?>
)

Cela marche.

Mais haut.php

Contient ceci pour le css :
<link href="../style.css" title="Défaut" rel="stylesheet" type="text/css" media="screen" />
et ben, ça ne détecte pas style.css
0