Posez votre question Signaler

PHP: fonction include et liens relatifs [Résolu]

sillage57 - Dernière réponse le 5 févr. 2008 à 21:14
Tout d'abord salut ! Bon sur mon site j'ai essayé le PHP car j'ai besoin de cette fameuse fonction "include". Comme ça je peux faire un menu commun à tout mon site.
J'ai donc un dossier: /home/acceuil.php avec ma page d'acceuil et j'inclus dedans des fichiers php
un dossier: /php/menu.php, header.php ect...
En local avec WAMP sa marche super parce-que dans la fonction include je rentre le lien absolu "c:/user.../menu.php". Le probleme c'est que évidemment sur internet sa marche pas, pour que sa marche faut que je change et mette le lien absolu sur le serveur "htt://www.monsite.com/php/menu.php", ce qui fait que je pourrais pu tester mon site en local (il appelera la page sur internet). Donc tout ça rend les choses compliqués, surtout que j'arrive pas à faire fonctionner include avec des liens relatifs. Je mettrais par exemple dans ma fonction include un truc du genre "/php/menu.php", un truc qui permettrait que sa marche ET en local ET sur internet... mais j'ai pas trouvé la méthode. Est-ce que c'est possible ?
Lire la suite 

PHP: fonction include et liens relatifs »

3 réponses
Réponse
+21
moins plus
Salut,

/ -> racine du domaine
./ -> racine du dossier courent
../ -> dossier parent

Le lien se fait par rapport au fichier courent, si index.php est à la racine du domaine, et que ton fichier à inclure est dans /php

Tu mes :

include('./php/menu.php');

Si tes fichiers sont dans :

www.mondomaine.net/site/index.php
www.mondomaine.net/php/menu.php

Ca va donner dans index.php :

include('../php/menu.php');


Si tes fichiers sont dans :


www.mondomaine.net/index.php
www.mondomaine.net/php/menu.php

Ca va donner dans index.php :

include('./php/menu.php');


Si tes fichiers sont dans :

www.mondomaine.net/index.php
www.mondomaine.net/menu.php

Ca va donner dans index.php :

include('./menu.php');

Note 1 : que la racine du domaine en local c'est http://localhost/
Note 2 : dans mes souvenir faire des includes en absolu (http://www.mondomaine.net/php/menu.php) est impossible pour des raisons de sécurité.
Ajouter un commentaire
Réponse
+0
moins plus
Waaouh quel précision ^^. Bah il me reste plus qu'à tester tout ça quand j'aurais le temps, en tout cas merci je note ça quelque part pour pas le perdre.

Note 2 : bah apparament chez FREE niveau sécurité ils sont autant à la ramasse qu'à la société générale puisque j'ai testé et ça marche... mais bon comme je fais include sur un fichier qui est dans le meme répertoire (de mon dossier "machin" à mon dossier "bidule") ça pose peut-etre pas de problème. Tu penses au fait d'inclure un fichier qui se trouverait sur un autre site ?
s.spark- 5 févr. 2008 à 21:14
Oui, mais ça dépend de la configuration du serveur.
Ajouter un commentaire
Ce document intitulé « PHP: fonction include et liens relatifs » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?