Include () sur dossier parent ?
aurelien__c
Messages postés
6
Date d'inscription
Statut
Membre
Dernière intervention
-
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour à tous,
J'ai une question concernant les include() en php.
Je souhaite inclure un fichier présent dans mon dossier php (lui même à la racine du site) [monsite.tld/php/] dans un fichier présent dans un autre sous dossier.. En l'occurrence mon fichier "config.php" doit être inclus dans le sous dossier "sds" (présent à la racine également).
L'idée première aurait été de faire quelque chose d'assez simple :
// dans le fichier "monsite.tld/sds/index.php"
Mais évidemment, cela ne marche pas. Les include ne prennent pas en charge la remontée d'arborescence il me semble ..
Si vous aviez la solution où bien même des pistes, ce serait top.
Merci d'avance !
J'ai une question concernant les include() en php.
Je souhaite inclure un fichier présent dans mon dossier php (lui même à la racine du site) [monsite.tld/php/] dans un fichier présent dans un autre sous dossier.. En l'occurrence mon fichier "config.php" doit être inclus dans le sous dossier "sds" (présent à la racine également).
L'idée première aurait été de faire quelque chose d'assez simple :
// dans le fichier "monsite.tld/sds/index.php"
<?php include ('../php/config.php'); ?>
Mais évidemment, cela ne marche pas. Les include ne prennent pas en charge la remontée d'arborescence il me semble ..
Si vous aviez la solution où bien même des pistes, ce serait top.
Merci d'avance !
A voir également:
- Include () sur dossier parent ?
- Dossier appdata - Guide
- Mettre un mot de passe sur un dossier - Guide
- Impossible de supprimer un dossier - Guide
- Dossier rar - Guide
- Dossier démarrage - Guide
3 réponses
Salut !
Tu pourrais utiliser ceci :
Tiens moi au courant :)
Je t'ai rendu service? Alors vote positivement.
Tutos informatique -> www.geekoriel.com
Tu pourrais utiliser ceci :
include $_SERVER['DOCUMENT_ROOT']."/php/config/config.php";
Tiens moi au courant :)
Je t'ai rendu service? Alors vote positivement.
Tutos informatique -> www.geekoriel.com
Bonjour,
Si si, les includes prennent tout-à-fait en compte les remontées de niveau !
Le problème doit venir d'ailleurs, il faudrait que tu nous donnes :
1 - Le message d'erreur (utilise REQUIRE plutôt que INCLUDE pour qu'ils s'affichent)
2 - Ton arborescence (n'oublie pas, si tu développes sur du windows mais publie sur du linux, que les noms sont sensibles à la casse chez les manchots)
3 - Éventuellement ton code source
Xavier
Si si, les includes prennent tout-à-fait en compte les remontées de niveau !
Le problème doit venir d'ailleurs, il faudrait que tu nous donnes :
1 - Le message d'erreur (utilise REQUIRE plutôt que INCLUDE pour qu'ils s'affichent)
2 - Ton arborescence (n'oublie pas, si tu développes sur du windows mais publie sur du linux, que les noms sont sensibles à la casse chez les manchots)
3 - Éventuellement ton code source
Xavier
Bonjour,
Alors,
- je n'ai aucun message d'erreur (*joie*) - juste une page blanche si je mets un require plutôt qu'un include
-pour la partie serveur, c'est du apache, je ne devrais normalement pas avoir de probleme de ce côté là.
- Le fichier "haut.php" (présent dans /php/)
Pour le fichier "index.php" du sous dossiers sds :
Si vous avez une idée, je suis preneur.
Merci encore à tous !
Aurélien
Alors,
- je n'ai aucun message d'erreur (*joie*) - juste une page blanche si je mets un require plutôt qu'un include
-pour la partie serveur, c'est du apache, je ne devrais normalement pas avoir de probleme de ce côté là.
- Le fichier "haut.php" (présent dans /php/)
<?php ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" > <head> <?php if(isset($titre) && trim($titre) != '') $titre = $titre.' : '.TITRESITE; else $titre = TITRESITE; ?> <title><?php echo $titre; ?></title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta name="language" content="fr" /> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <!-- Web Fonts --> <link href="https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700,800%7CShadows+Into+Light" rel="stylesheet" type="text/css"> <!-- Vendor CSS --> <link rel="stylesheet" href="vendor/bootstrap/bootstrap.css"> <link rel="stylesheet" href="vendor/fontawesome/css/font-awesome.css"> <link rel="stylesheet" href="vendor/owlcarousel/owl.carousel.min.css" media="screen"> <link rel="stylesheet" href="vendor/owlcarousel/owl.theme.default.min.css" media="screen"> <link rel="stylesheet" href="vendor/magnific-popup/magnific-popup.css" media="screen"> <!-- Theme CSS --> <link rel="stylesheet" href="css/theme.css"> <link rel="stylesheet" href="css/theme-elements.css"> <link rel="stylesheet" href="css/theme-blog.css"> <link rel="stylesheet" href="css/theme-shop.css"> <link rel="stylesheet" href="css/theme-animate.css"> <!-- Current Page CSS --> <link rel="stylesheet" href="vendor/rs-plugin/css/settings.css" media="screen"> <link rel="stylesheet" href="vendor/circle-flip-slideshow/css/component.css" media="screen"> <!-- Skin CSS --> <link rel="stylesheet" href="css/skins/default.css"> <!-- Theme Custom CSS --> <link rel="stylesheet" href="css/custom.css"> <!-- Head Libs --> <script src="vendor/modernizr/modernizr.js"></script> </head> //Suivi du body (mais effacé là pour gagner de la place.) <body>
Pour le fichier "index.php" du sous dossiers sds :
<?php session_start(); header('Content-type: text/html; charset=utf-8'); require $_SERVER['DOCUMENT_ROOT']."/php/config.php"; require $_SERVER['DOCUMENT_ROOT']."/php/fonction.php"; require $_SERVER['DOCUMENT_ROOT']."/php/haut.php"; //connectMaBase() //actualiser_session(); $titre = 'Mon compte'; /* if(isset($_SESSION['membre_id'])) { header('Location: '.ROOTPATH.'/index.php'); exit(); } */ ?> // Le contenu de la page est présent à cet endroit là mais effacé // pour alléger le message <?php if (isset ($_POST['submit'])){ $membre_email=$_POST['membre_email']; $membre_nom=$_POST['membre_nom']; $membre_prenom=$_POST['membre_prenom']; $membre_codepostal=$_POST['membre_codepostal']; $membre_telephone=$_POST['membre_telephone']; $membre_datenaissance=$_POST['membre_datenaissance']; $membre_mdp=$_POST['membre_mdp']; $today = date("y-m-d"); connectMaBase(); $sql = 'INSERT INTO membres VALUES("","'.$membre_email.'","'.$membre_nom.'","'.$membre_prenom.'","'.$membre_codepostal.'","'.$membre_telephone.'","'.$membre_datenaissance.'","'.$membre_mdp.'","'.$today.'")'; mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error()); mysql_close(); } ?> <?php require $_SERVER['DOCUMENT_ROOT']."/php/bas.php"; ?>
Si vous avez une idée, je suis preneur.
Merci encore à tous !
Aurélien
Bonsoir
Déjà .. tu peux remplacer le code :
par :
Ensuite.... dans ton fichier index.php ... tu inclus ta page : "haut.php" ...; AVANT d'avoir défini ta variable $titre ... ce n'est pas logique....
et enfin.. pour tes imports de css et scripts JS ... tu peux leur mettre le chemin complet depuis la racine
c'est à dire par exemple :
N'hésites pas non plus à ajouter l'instruction php suivante :
Tout au début de tes pages .... cela permet d'afficher les erreurs PHP.
NB: Penses également à utiliser les outils de deboguage de ton navigateur internet ( perso.. j'utiliser le plugin FireBug pour Firefox ) afin de voir les éventuelles erreurs de code javascript et analyser mon css....
Déjà .. tu peux remplacer le code :
if(isset($titre) && trim($titre) != '') $titre = $titre.' : '.TITRESITE; else $titre = TITRESITE;
par :
$titre = !empty($titre) ? $titre.' : '.TITRESITE : TITRESITE;
Ensuite.... dans ton fichier index.php ... tu inclus ta page : "haut.php" ...; AVANT d'avoir défini ta variable $titre ... ce n'est pas logique....
et enfin.. pour tes imports de css et scripts JS ... tu peux leur mettre le chemin complet depuis la racine
c'est à dire par exemple :
<link rel="stylesheet" href="<?php echo $_SERVER['DOCUMENT_ROOT'];?>/css/theme.css">
N'hésites pas non plus à ajouter l'instruction php suivante :
error_reporting(E_ALL);
Tout au début de tes pages .... cela permet d'afficher les erreurs PHP.
NB: Penses également à utiliser les outils de deboguage de ton navigateur internet ( perso.. j'utiliser le plugin FireBug pour Firefox ) afin de voir les éventuelles erreurs de code javascript et analyser mon css....
Je vois une première avancée ..
J'ai donc maintenant ces lignes en haut de mon index :
L'arborescence semble bonne (il m'affiche du contenu, ce qui n'était pas le cas avant) ..
Cependant je pense qu'il n'intègre pas mes fichiers CSS présent dans le header.php ..
Une solution ? :)
sans voir le code qui pose problème. . Impossible de te répondre