PHP arborescence site et include menu
Fermé
Florence
-
10 févr. 2009 à 11:48
neo_selen Messages postés 153 Date d'inscription dimanche 11 juillet 2010 Statut Membre Dernière intervention 29 juin 2016 - 21 juin 2012 à 23:16
neo_selen Messages postés 153 Date d'inscription dimanche 11 juillet 2010 Statut Membre Dernière intervention 29 juin 2016 - 21 juin 2012 à 23:16
A voir également:
- Trouver arborescence site web
- Site de telechargement - Accueil - Outils
- Site comme coco - Accueil - Réseaux sociaux
- Création site web - Guide
- Trouver adresse mac - Guide
- Quel site remplace coco - Accueil - Réseaux sociaux
10 réponses
niahoo
Messages postés
247
Date d'inscription
lundi 24 décembre 2007
Statut
Membre
Dernière intervention
23 mai 2010
19
10 févr. 2009 à 12:43
10 févr. 2009 à 12:43
+1
dans ton fichier menu.php met des liens complets, ainsi tu n'aura pas en en faire plusieurs versions, donc http://www.bblblbl.wom/qsdqsdqd/sdfsdf.php
par contre pour te s include, je répete ce qu'il dit en plsu précis.
si ton menu.php se trouve dans le dossier racine:
pour l'inclure depuis une page dans le dossier racine: include("menu.php");
pour l'inclure dans une page du dossier /abcd: include("../menu.php"); ou '..' signifie: remonter d'un dossier
mettons que dans domaine.com/abcd/1.php, tu veuille inclure un fichier domaine.com/yxz/A.phh, il te faut donc remonter d'un dossier, puis aller dans le dossier xyz pour trouver le fichier, donc ça ferait include("../xyz/a.php");
voilà le principe.
mais personellement je met toutes les pages de mon site à la racine, et pour différencier les thme je ferais comme ça:
t1_page.php
t1_page2.php
t2_page.php
t2_page2.php
par contre si dans ton menu tu n'utilises pas de fonctions de php mais juste du html, tu peux alors faire ça en javascript.
come ça dans tes pages tu inclus une page.js qui contient une fonction qui crée le menu, puis dans ta page a l'emplacement du menu tu fais <scritp language="javascript">taFonction();</script>. car comme ça tu peux appeler ta page.js avec son adresse complete (http://machin), et tu peux donc déplacer tes pages quand tu veux, sans avoir à retoucher les includes.
dans ton fichier menu.php met des liens complets, ainsi tu n'aura pas en en faire plusieurs versions, donc http://www.bblblbl.wom/qsdqsdqd/sdfsdf.php
par contre pour te s include, je répete ce qu'il dit en plsu précis.
si ton menu.php se trouve dans le dossier racine:
pour l'inclure depuis une page dans le dossier racine: include("menu.php");
pour l'inclure dans une page du dossier /abcd: include("../menu.php"); ou '..' signifie: remonter d'un dossier
mettons que dans domaine.com/abcd/1.php, tu veuille inclure un fichier domaine.com/yxz/A.phh, il te faut donc remonter d'un dossier, puis aller dans le dossier xyz pour trouver le fichier, donc ça ferait include("../xyz/a.php");
voilà le principe.
mais personellement je met toutes les pages de mon site à la racine, et pour différencier les thme je ferais comme ça:
t1_page.php
t1_page2.php
t2_page.php
t2_page2.php
par contre si dans ton menu tu n'utilises pas de fonctions de php mais juste du html, tu peux alors faire ça en javascript.
come ça dans tes pages tu inclus une page.js qui contient une fonction qui crée le menu, puis dans ta page a l'emplacement du menu tu fais <scritp language="javascript">taFonction();</script>. car comme ça tu peux appeler ta page.js avec son adresse complete (http://machin), et tu peux donc déplacer tes pages quand tu veux, sans avoir à retoucher les includes.
974_Vin's_974
Messages postés
547
Date d'inscription
vendredi 23 janvier 2009
Statut
Membre
Dernière intervention
19 février 2009
102
10 févr. 2009 à 11:55
10 févr. 2009 à 11:55
En faite, tu as une menu ??? et pour pa répéter le code dans chaque page, tu souhaite, le mettre dans une page menu.php, et a chak fois sur les page dont tu en a besoin tu fais un include ("menu.php") c ca ???
Ricky38
Messages postés
4349
Date d'inscription
samedi 15 mars 2008
Statut
Contributeur
Dernière intervention
2 novembre 2013
1 459
10 févr. 2009 à 12:29
10 févr. 2009 à 12:29
Bonjour,
Oui tu peux très bien prendre l'arborescence que tu désires.
Pour ce qui est des liens que tu dois mettrent dans ta page menu et bien je te dirais de mettre le lien complet comme http://www.monsite.com/index.php au lieu de ../index.php. De cette façon tu peux utiliser l'arborescence que tu veux.
Pour ce qui est de tes includes et bien tu vas devoir te servir de /menu.php pour qu'il sache que ton fichier menu est à la racine de ton site. Comme ceci:
Sur ta page index et toutes tes pages a la racine du site :
tu peux aussi mettre le lien complet pour accéder a ton fichier menu.
Sur tes autres pages dans tes différents thèmes:
pour ce qui est de tes liens de ta page menu et bien là encore tu peux utiliser les liens complets ou bien encore faire comme ceci:
pour l'index ton lien serait ../index.php
pour les autres pages ce serait ../theme1/page1.php ../theme1/page2.php etc
../theme2/page1.php
../theme3/page1.php
les liens complets restent encore moins compliqués
Oui tu peux très bien prendre l'arborescence que tu désires.
Pour ce qui est des liens que tu dois mettrent dans ta page menu et bien je te dirais de mettre le lien complet comme http://www.monsite.com/index.php au lieu de ../index.php. De cette façon tu peux utiliser l'arborescence que tu veux.
Pour ce qui est de tes includes et bien tu vas devoir te servir de /menu.php pour qu'il sache que ton fichier menu est à la racine de ton site. Comme ceci:
Sur ta page index et toutes tes pages a la racine du site :
<?PHP include('menu.php'); ?>
tu peux aussi mettre le lien complet pour accéder a ton fichier menu.
Sur tes autres pages dans tes différents thèmes:
<?PHP include('../menu.php'); ?>
pour ce qui est de tes liens de ta page menu et bien là encore tu peux utiliser les liens complets ou bien encore faire comme ceci:
pour l'index ton lien serait ../index.php
pour les autres pages ce serait ../theme1/page1.php ../theme1/page2.php etc
../theme2/page1.php
../theme3/page1.php
les liens complets restent encore moins compliqués
Tout d'abord merci à tous pour vos réponses :-)
Ricky38 et Niahoo, vos réponses vont tout à fait dans le sens de ce que je souhaiterais faire. (j'avais présenté mon arborescence avec des décalages qui n'ont pas été pris en charge, mais l'idée de base est donc bien d'avoir ma page "index.php" et ma page "menu.php" à la racine du dossier qui contiendra mon site, puis d'avoir un sous dossier par théme, sous dossiers (DossierTheme1, etc) dans lesquelles j'aurai mes autres "pages.php"
Ce que tu me conseilles Ricky, il me semble l'avoir appliqué à la lettre mais sans succès. En HTML les notions de liens sont bien claires dans mon esprit (du moins je crois ;-) même si je n'utilise quasiment que des liens relatifs. En tout cas je n'ai jamais eu de problème en ce sens.
Pour ce qui est du code "include", je l'ai bien mis dés le départ tel que tu le conseilles :
- dans la page index.php
<?PHP
include('menu.php');
?>
- dans les autres pages.php
<?PHP
include('../menu.php');
?>
Par contre, il y a une chose qui m'échappe totalement, c'est lorsque tu écris ceci :
-------------------------------------------
pour ce qui est de tes liens de ta page menu et bien là encore tu peux utiliser les liens complets ou bien encore faire comme ceci:
pour l'index ton lien serait ../index.php
pour les autres pages ce serait ../theme1/page1.php ../theme1/page2.php etc
../theme2/page1.php
../theme3/page1.php
---------------------------------------------
Si je prends un exemple concret en me basant sur l'arborescence que je souhaite mettre en place : supposons que sur ma page "menu.php" j'ai 2 liens : l'un pour accéder à ma page d'accueil (index.php), l'autre pour accéder à la premiere page de mon Theme1 (T1page1.php) :
Si j'inclus ma page "menu.php" dans ma page "index.php", le chemin des 2 liens sur la page "menu.php" seront :
<a href="index.php">Accueil</a>
<a href="Theme1/page1.php">Premiere page du theme1</a>
Mais si j'inclus aussi cette même page "menu.php" dans ma page "page1.php", le chemin des 2 liens sur la page "menu.php" devront devenir :
<a href="../index.php">Accueil</a>
<a href="page1.php">Premiere page du theme1</a>
C'est cela que je ne comprends pas :-( comment une même page "menu.php" peut avoir des liens qui fonctionnent pour toutes les pages de mon sites, du moment où toutes mes pages ne sont pas au même niveau dans l'arborescence...
De toute évidence il y a quelque chose qui m'échappe ?! peut être n'ai je pas encore suffisamment de connaissances PHP pour comprendre clairement la façon d'utiliser la fonction "include" et du coup je passe à coté d'une évidence en ayant un raisonnement basé sur le HTML.
Aussi, si tu as le temps, pourrais tu à partir de mon exemple basique, me donner une réponse concrète, s'il te plait ? :-)
Ricky38 et Niahoo, vos réponses vont tout à fait dans le sens de ce que je souhaiterais faire. (j'avais présenté mon arborescence avec des décalages qui n'ont pas été pris en charge, mais l'idée de base est donc bien d'avoir ma page "index.php" et ma page "menu.php" à la racine du dossier qui contiendra mon site, puis d'avoir un sous dossier par théme, sous dossiers (DossierTheme1, etc) dans lesquelles j'aurai mes autres "pages.php"
Ce que tu me conseilles Ricky, il me semble l'avoir appliqué à la lettre mais sans succès. En HTML les notions de liens sont bien claires dans mon esprit (du moins je crois ;-) même si je n'utilise quasiment que des liens relatifs. En tout cas je n'ai jamais eu de problème en ce sens.
Pour ce qui est du code "include", je l'ai bien mis dés le départ tel que tu le conseilles :
- dans la page index.php
<?PHP
include('menu.php');
?>
- dans les autres pages.php
<?PHP
include('../menu.php');
?>
Par contre, il y a une chose qui m'échappe totalement, c'est lorsque tu écris ceci :
-------------------------------------------
pour ce qui est de tes liens de ta page menu et bien là encore tu peux utiliser les liens complets ou bien encore faire comme ceci:
pour l'index ton lien serait ../index.php
pour les autres pages ce serait ../theme1/page1.php ../theme1/page2.php etc
../theme2/page1.php
../theme3/page1.php
---------------------------------------------
Si je prends un exemple concret en me basant sur l'arborescence que je souhaite mettre en place : supposons que sur ma page "menu.php" j'ai 2 liens : l'un pour accéder à ma page d'accueil (index.php), l'autre pour accéder à la premiere page de mon Theme1 (T1page1.php) :
Si j'inclus ma page "menu.php" dans ma page "index.php", le chemin des 2 liens sur la page "menu.php" seront :
<a href="index.php">Accueil</a>
<a href="Theme1/page1.php">Premiere page du theme1</a>
Mais si j'inclus aussi cette même page "menu.php" dans ma page "page1.php", le chemin des 2 liens sur la page "menu.php" devront devenir :
<a href="../index.php">Accueil</a>
<a href="page1.php">Premiere page du theme1</a>
C'est cela que je ne comprends pas :-( comment une même page "menu.php" peut avoir des liens qui fonctionnent pour toutes les pages de mon sites, du moment où toutes mes pages ne sont pas au même niveau dans l'arborescence...
De toute évidence il y a quelque chose qui m'échappe ?! peut être n'ai je pas encore suffisamment de connaissances PHP pour comprendre clairement la façon d'utiliser la fonction "include" et du coup je passe à coté d'une évidence en ayant un raisonnement basé sur le HTML.
Aussi, si tu as le temps, pourrais tu à partir de mon exemple basique, me donner une réponse concrète, s'il te plait ? :-)
Ricky38
Messages postés
4349
Date d'inscription
samedi 15 mars 2008
Statut
Contributeur
Dernière intervention
2 novembre 2013
1 459
>
Florence
10 févr. 2009 à 15:18
10 févr. 2009 à 15:18
Salut,
la meilleure manière de ne pas te casser la tête est de mettre des liens complets dans ta page menu.php
soit:
voilà alors tu pourras être a n'importe quel niveau et tu n'auras pas de problème
;)
la meilleure manière de ne pas te casser la tête est de mettre des liens complets dans ta page menu.php
soit:
<a href="http://www.tondomaine/index.php">Accueil</a> <a href="http://www.tondomaine/theme1/page1.php">Premiere page du theme1</a>
voilà alors tu pourras être a n'importe quel niveau et tu n'auras pas de problème
;)
Ricky38
Messages postés
4349
Date d'inscription
samedi 15 mars 2008
Statut
Contributeur
Dernière intervention
2 novembre 2013
1 459
>
Florence
10 févr. 2009 à 15:45
10 févr. 2009 à 15:45
Florence,
si jamais tu as encore du mal à comprendre et bien inscrit toi et envoie moi un message privé et je pourrai regarder les fichiers que tu as actuellement pour bien les coder.
si jamais tu as encore du mal à comprendre et bien inscrit toi et envoie moi un message privé et je pourrai regarder les fichiers que tu as actuellement pour bien les coder.
Florence
>
Ricky38
Messages postés
4349
Date d'inscription
samedi 15 mars 2008
Statut
Contributeur
Dernière intervention
2 novembre 2013
10 févr. 2009 à 17:05
10 févr. 2009 à 17:05
Merci ! c'est vraiment sympa :-)
Avant de poster dans le forum, le fait de mettre un chemin absolu m'était apparu comme la "logique" à suivre mais cela n'a jamais fonctionné ! j'en déduis donc que je n'ai pas su donner le BON chemin ! Je suis même sûre de ne pas savoir exactement lequel inscrire dans mes liens, car je travaille pour l'heure en local. J'abuse donc pour poser l'ultime (j'espère !) question :
quel chemin précis dois je indiquer ? sachant que mon répertoire de données personnelles se situe sur un disque "virtuel" E (où se situent donc tous les fichiers de mon futur site) et que tout ce qui est lié au fonctionnement du pc se trouve classiquement sous le célèbre "C"........ sur lequel se situe donc également mon serveur (wamp) me permettant de travailler hors ligne
j'avais essayé ça, entre autres tentatives de chemin complet "hors ligne", à inscrire dans mes liens :
<a href="http://localhost/DossierRacine/index.php">Accueil</a>
<a href="E:\DossierRacine/index.php">Accueil</a>
<a href="file:///E|/DossierRacine/index.php">Accueil</a>
<a href="file:///C|/wamp/www/DossierRacine/index.php">Accueil</a>
La bonne question que j'aurais du poser tout de suite finalement, c'est quoi mettre avant DossierRacine ? puisqu'après je sais quel chemin indiquer selon le fichier que je souhaite atteindre
J'avoue qu'en HTML les chemins (relatifs ou absolus) ne me posaient aucun problème. Mais en PHP avec l'introduction d'un serveur virtuel sur mon pc, je n'ai plus aucune certitude sur le chemin absolu à indiquer en travaillant en local...
Avant de poster dans le forum, le fait de mettre un chemin absolu m'était apparu comme la "logique" à suivre mais cela n'a jamais fonctionné ! j'en déduis donc que je n'ai pas su donner le BON chemin ! Je suis même sûre de ne pas savoir exactement lequel inscrire dans mes liens, car je travaille pour l'heure en local. J'abuse donc pour poser l'ultime (j'espère !) question :
quel chemin précis dois je indiquer ? sachant que mon répertoire de données personnelles se situe sur un disque "virtuel" E (où se situent donc tous les fichiers de mon futur site) et que tout ce qui est lié au fonctionnement du pc se trouve classiquement sous le célèbre "C"........ sur lequel se situe donc également mon serveur (wamp) me permettant de travailler hors ligne
j'avais essayé ça, entre autres tentatives de chemin complet "hors ligne", à inscrire dans mes liens :
<a href="http://localhost/DossierRacine/index.php">Accueil</a>
<a href="E:\DossierRacine/index.php">Accueil</a>
<a href="file:///E|/DossierRacine/index.php">Accueil</a>
<a href="file:///C|/wamp/www/DossierRacine/index.php">Accueil</a>
La bonne question que j'aurais du poser tout de suite finalement, c'est quoi mettre avant DossierRacine ? puisqu'après je sais quel chemin indiquer selon le fichier que je souhaite atteindre
J'avoue qu'en HTML les chemins (relatifs ou absolus) ne me posaient aucun problème. Mais en PHP avec l'introduction d'un serveur virtuel sur mon pc, je n'ai plus aucune certitude sur le chemin absolu à indiquer en travaillant en local...
Bonjour,
je souhaite de la même façon inclure un menu commun à toutes les pages d'un site.
Mais en lisant ce sujet je me pose la question suivante:
Pourquoi chercher à inclure le même menu à toutes les pages plutôt que de faire l'inverse?
N'est-ce pas plus simple d'inclure la bonne page à l'index contenant le menu en fonction du choix effectué sur ce même menu?
je souhaite de la même façon inclure un menu commun à toutes les pages d'un site.
Mais en lisant ce sujet je me pose la question suivante:
Pourquoi chercher à inclure le même menu à toutes les pages plutôt que de faire l'inverse?
N'est-ce pas plus simple d'inclure la bonne page à l'index contenant le menu en fonction du choix effectué sur ce même menu?
Bonjour Wild,
me concernant, la réponse à ta question est simple : étant donné que je commence tout juste à découvrir le PHP, j'attaque "doucement" ;-) afin d'être sûre de maitriser les bases.
Concernant la fonction "include", j'avais déjà mis "au chaud" le lien de "PHP débutant" que tu évoques dans ton second message, mais pour l'heure j'estime ne pas avoir une connaissance/maitrise suffisante des risques induits par cette méthode pour l'utiliser. Bref, je ne suis pas encore suffisamment à l'aise avec le langage PHP pour utiliser cette méthode. Ceci explique donc mon choix actuel.
Maintenant, même si elle semble plus simple, cette méthode est elle la mieux adaptée ou la plus recommandée ? je laisse aux spécialistes le soin de répondre :-)
me concernant, la réponse à ta question est simple : étant donné que je commence tout juste à découvrir le PHP, j'attaque "doucement" ;-) afin d'être sûre de maitriser les bases.
Concernant la fonction "include", j'avais déjà mis "au chaud" le lien de "PHP débutant" que tu évoques dans ton second message, mais pour l'heure j'estime ne pas avoir une connaissance/maitrise suffisante des risques induits par cette méthode pour l'utiliser. Bref, je ne suis pas encore suffisamment à l'aise avec le langage PHP pour utiliser cette méthode. Ceci explique donc mon choix actuel.
Maintenant, même si elle semble plus simple, cette méthode est elle la mieux adaptée ou la plus recommandée ? je laisse aux spécialistes le soin de répondre :-)
burnedsyn
Messages postés
170
Date d'inscription
samedi 29 septembre 2007
Statut
Membre
Dernière intervention
21 février 2009
16
21 févr. 2009 à 11:55
21 févr. 2009 à 11:55
Tout a fait c'est le plus simple
dans l'index tu inclu le menu
et les page qui sont liées par le menu sont aussi inclue par le fichier index
et tes url deviennent alors
<a href="./?targetpage=pouetpage">lien</a>
qui rappelle automatiquement l'index avec le parametre targetpage et tu inclu le targetpage queqlque part dans ton index
dans l'index tu inclu le menu
et les page qui sont liées par le menu sont aussi inclue par le fichier index
et tes url deviennent alors
<a href="./?targetpage=pouetpage">lien</a>
qui rappelle automatiquement l'index avec le parametre targetpage et tu inclu le targetpage queqlque part dans ton index
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour
J'utilise également la fonction include de php pour afficher un menu dans toutes les pages.
mon pb est que récemment j'ai ajoute tout un tas de pages qui sont dans différents niveau de sous dossiers
Ex :
dossier www racine contient
menu.php
index.php
<dossier 1>page1.php (avec include pour le menu ../menu.php)
<dossier2>page2.php (avec include pour le menu ../menu.php)
<dossier2a>page2a.php (avec include pour le menu ../../menu.php)
<dossier2b>page2b.php (avec include pour le menu ../../menu.php)
mais comme cela se diversifie sur plusieurs sous-niveaux, j'ai envie de remplacer les ../../ et ../../../ en indiquant simplement comme en html le dossier racine où se trouve le menu.php
Or quand je mets le / pour indiquer la racine : ex :
<?php
include "/menu.php";
?>
cela me renvoie une erreur car il ne trouve pas le fichier menu.php.
Je ne sais donc pas comment indiquer en php que c'est dans le dossier racine et je n'avais pas tellement envie d'utiliser le chemin http complet.
Y a t'il une syntaxe particulière pour cela ?
merci d'avance
Melora
J'utilise également la fonction include de php pour afficher un menu dans toutes les pages.
mon pb est que récemment j'ai ajoute tout un tas de pages qui sont dans différents niveau de sous dossiers
Ex :
dossier www racine contient
menu.php
index.php
<dossier 1>page1.php (avec include pour le menu ../menu.php)
<dossier2>page2.php (avec include pour le menu ../menu.php)
<dossier2a>page2a.php (avec include pour le menu ../../menu.php)
<dossier2b>page2b.php (avec include pour le menu ../../menu.php)
mais comme cela se diversifie sur plusieurs sous-niveaux, j'ai envie de remplacer les ../../ et ../../../ en indiquant simplement comme en html le dossier racine où se trouve le menu.php
Or quand je mets le / pour indiquer la racine : ex :
<?php
include "/menu.php";
?>
cela me renvoie une erreur car il ne trouve pas le fichier menu.php.
Je ne sais donc pas comment indiquer en php que c'est dans le dossier racine et je n'avais pas tellement envie d'utiliser le chemin http complet.
Y a t'il une syntaxe particulière pour cela ?
merci d'avance
Melora
Ricky38
Messages postés
4349
Date d'inscription
samedi 15 mars 2008
Statut
Contributeur
Dernière intervention
2 novembre 2013
1 459
15 sept. 2009 à 13:59
15 sept. 2009 à 13:59
Salut,
voici deux sites où tu vas trouver ton information :)
http://www.php-astux.info/chemins-relatif-absolu.php
http://wiki.mediabox.fr/tutoriaux/html/chemins_absolus_et_relatifs
Bonne journée
voici deux sites où tu vas trouver ton information :)
http://www.php-astux.info/chemins-relatif-absolu.php
http://wiki.mediabox.fr/tutoriaux/html/chemins_absolus_et_relatifs
Bonne journée
Merci pour ta réponse.
En réalité je sais parfaitement la différence entre un chemin relatif et un chemin absolu.
Ma question portait très précisément sur la syntaxe en php d'un chemin absolu.
En html lorsque je veux indiquer dans un lien (par ex pour une photo) son chemin absolu, j'indique :
/img/photo.jpg
qui signifie par le / de début que mon dossier img se trouve à la racine du dossier de site en ligne.
Je ne suis pas obligée de passer par son url complète (qui serait dans cet exemple : http://www.monsite/img/photo.jpg)
Ainsi, si je change le nom du site mais que je conserve la structure, alors tous les chemins continuent de fonctionner.
Je voudrais faire la même chose dans mon "include"
A ce jour je suis obligée d'utiliser la méthode remonter (../../) pour redescendre dans le bon sous-dossier.
Cela n'est pas très commode quand l'arborescence se complexifie (il y a bcp de pages sur mon site, qui se sont ajoutées avec le temps et les exigences des personnes concernées, et qui n'ont pas été planifiées dans la structure d'origine)
Or je ne peux pas utiliser la même syntaxe de type /dossier/menu.php car apparemment php ne comprend pas le / de début comme étant la racine du site.
Je n'ai que la possibilité d'utiliser l'url complète, ce que j'aurais voulu évité (mais que j'ai appliqué pour le moment faute de mieux)
J'espère avoir été plus claire dans mon explication
Bonne journée également
Melora
En réalité je sais parfaitement la différence entre un chemin relatif et un chemin absolu.
Ma question portait très précisément sur la syntaxe en php d'un chemin absolu.
En html lorsque je veux indiquer dans un lien (par ex pour une photo) son chemin absolu, j'indique :
/img/photo.jpg
qui signifie par le / de début que mon dossier img se trouve à la racine du dossier de site en ligne.
Je ne suis pas obligée de passer par son url complète (qui serait dans cet exemple : http://www.monsite/img/photo.jpg)
Ainsi, si je change le nom du site mais que je conserve la structure, alors tous les chemins continuent de fonctionner.
Je voudrais faire la même chose dans mon "include"
A ce jour je suis obligée d'utiliser la méthode remonter (../../) pour redescendre dans le bon sous-dossier.
Cela n'est pas très commode quand l'arborescence se complexifie (il y a bcp de pages sur mon site, qui se sont ajoutées avec le temps et les exigences des personnes concernées, et qui n'ont pas été planifiées dans la structure d'origine)
Or je ne peux pas utiliser la même syntaxe de type /dossier/menu.php car apparemment php ne comprend pas le / de début comme étant la racine du site.
Je n'ai que la possibilité d'utiliser l'url complète, ce que j'aurais voulu évité (mais que j'ai appliqué pour le moment faute de mieux)
J'espère avoir été plus claire dans mon explication
Bonne journée également
Melora
Ricky38
Messages postés
4349
Date d'inscription
samedi 15 mars 2008
Statut
Contributeur
Dernière intervention
2 novembre 2013
1 459
15 sept. 2009 à 14:56
15 sept. 2009 à 14:56
Salut,
et bien en PHP ça fonctionne de la même manière
tout dépends ou est ton dossier
ex : /dossier/menu.php
tu pourrais faire ../dossier/menu.php et ça fonctionnerait
Mais petite question, pourquoi ne pas mettre le chemin complet ?
Tu fonctionne en php alors tu pourrais même créer une variable
donc $menu = ton lien complet;
et dans ton include tu te sert de la variable $menu au lien du lien
Personnellement j'opterais pour le lien complet dans l'Include
et bien en PHP ça fonctionne de la même manière
tout dépends ou est ton dossier
ex : /dossier/menu.php
tu pourrais faire ../dossier/menu.php et ça fonctionnerait
Mais petite question, pourquoi ne pas mettre le chemin complet ?
Tu fonctionne en php alors tu pourrais même créer une variable
donc $menu = ton lien complet;
et dans ton include tu te sert de la variable $menu au lien du lien
Personnellement j'opterais pour le lien complet dans l'Include
Une variable ne changerait rien puisqu'il faudrait que je la crée dans chaque page du site où il y aurait l'include non ?
donc autant renseigner l'include en dur
pour info le site
www.leemoonho.com
si tu veux regarder la structure
j'ai effectivement opté pour la solution que tu préconises
mais j'avais auparavant testé de mettre dans l'include
<?php
include "/dossier/menu.php";
?>
mais cela ne fonctionnait pas, il me renvoie une erreur comme quoi il ne trouve pas le fichier menu.php
bah j'ai mis le chemin url complet tant pis ^^
merci bien
donc autant renseigner l'include en dur
pour info le site
www.leemoonho.com
si tu veux regarder la structure
j'ai effectivement opté pour la solution que tu préconises
mais j'avais auparavant testé de mettre dans l'include
<?php
include "/dossier/menu.php";
?>
mais cela ne fonctionnait pas, il me renvoie une erreur comme quoi il ne trouve pas le fichier menu.php
bah j'ai mis le chemin url complet tant pis ^^
merci bien
neo_selen
Messages postés
153
Date d'inscription
dimanche 11 juillet 2010
Statut
Membre
Dernière intervention
29 juin 2016
15
21 juin 2012 à 23:16
21 juin 2012 à 23:16
j'ai trouvé !!!!!!!!!!!!
après quelques semaines de galères...
nativement php me donnait la solution !
eh oui, hébergé en http://utilisateur.hebergeur.com
ou monsite.com, cette astuce marche à coup sûr !
$url='http://'.getenv("HTTP_HOST").'/le/chemin/url/tonfichier.php'; // lien url exact !
même si le répertoire web est /var/truc/httpdocs/ ça marche !
echo $url.'<br/>'."\n"; // pour être sûr(e) que ça fonctionne.
echo '<a href="'.$url.'"'.'>mon lien vers je ne sais quoi</a>'; //ton lien html est là !
tu peux utiliser $url dans ton include, puisque cette fonction attend en paramètre le chemin, comme ceci:
<?php include($url); ?>
après quelques semaines de galères...
nativement php me donnait la solution !
eh oui, hébergé en http://utilisateur.hebergeur.com
ou monsite.com, cette astuce marche à coup sûr !
$url='http://'.getenv("HTTP_HOST").'/le/chemin/url/tonfichier.php'; // lien url exact !
même si le répertoire web est /var/truc/httpdocs/ ça marche !
echo $url.'<br/>'."\n"; // pour être sûr(e) que ça fonctionne.
echo '<a href="'.$url.'"'.'>mon lien vers je ne sais quoi</a>'; //ton lien html est là !
tu peux utiliser $url dans ton include, puisque cette fonction attend en paramètre le chemin, comme ceci:
<?php include($url); ?>
Psyk974
Messages postés
551
Date d'inscription
lundi 2 février 2009
Statut
Membre
Dernière intervention
30 mars 2010
51
10 févr. 2009 à 11:56
10 févr. 2009 à 11:56
Salut,
Tout a fait possible.
Ta page principale sera l'index.php
Pourquoi tu n'intègres pas le menu directement dans cette page sans passer par un include ;)
Pour tes autres pages rien de plus simples pour les appeler.
tu peux par exemple faire :
Tout a fait possible.
Ta page principale sera l'index.php
Pourquoi tu n'intègres pas le menu directement dans cette page sans passer par un include ;)
Pour tes autres pages rien de plus simples pour les appeler.
tu peux par exemple faire :
<?php include('DossierTheme1/page.php'); // pour appeler une page dans ton dossier "DossierTheme1" ?>
niahoo
Messages postés
247
Date d'inscription
lundi 24 décembre 2007
Statut
Membre
Dernière intervention
23 mai 2010
19
10 févr. 2009 à 12:37
10 févr. 2009 à 12:37
non la tu fais l'inverse de ce qu'elle veut