|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : mai 2004 Messages : 35 ![]() |
bonjour a tous,
alors voila mon site avance tres bien mais j'ai un soucis avec la fonction "include". pour commencer je vous explique comment est disposer mon site : a la racine : index.php qui fait un include sur chacun des fichier suivant :
dans le répertoire galerie : index.php qui fait un include sur chacun des fichier suivant :
un répertoire images où sont stocké les images du design du site. chacun des différents fichiers php enumerer précédemment sont identiques a un détails prêt : les chemins vers les images (entre autres) dans les fichiers php dans la racine sont du type images/entete.jpg etc et ceux dans les fichiers php dans le répertoire galerie sont du type ../images/entete.jpg etc de cette manière du moment que je fait une modif dans mes fichiers php a la racines je suis obligé (cela va de soi) de faire les même modif dans ceux présents dans le répertoire galerie, ce qui n'est pas pratique du tout. du coup je voudrais ne plus avoir ces fichiers php dans le répertoire galerie et les avoir donc uniquement dans la racine. de cette manière je n'aurais plus a modifier les fichiers php présents dans tous les sous-répertoires. (j'espère que vous me suivez). cela doit être simple mais le plus gros de mon soucis est le suivant : l'objet flash qui genere ma galerie, si je l'appelle depuis un fichier présent dans la racine, l'anim va se lancer mais comme les fichiers de config ne sont pas dans la racine cela n'affiche pas ma galerie. voila en gros pourquoi j'ai mes fichiers php en double dans la racine et dans le sous-répertoire galerie. ma question est la suivante : comment peut-on faire appelle a un fichier php tout en prenant en compte l'origine de l'appel ? je sens que tout ce que j'ai dis n'est pas du tout clair. si vous ne comprenez pas n'hésitez pas je trouverai une solution pour retranscrire de manière plus simple mon soucis. merci d'avance pour toute l'aide que vous pourrez m'apporter cordialement Didou ps la solution serait de mettre tous les fichiers dans la racine mais alors la j'aurai un nombre pas possible de fichiers dans la racine et cela risque d'être un peu confus de gérer tout cela. |
|
|
00
|
|
|
#2 |
|
Membre confirmé
![]() Inscription : décembre 2006 Messages : 297 ![]() |
je te conseil require() à include()
Si ton index.php inclue des fichiers dans des répertoires, ses fichiers étant inclue dans l'index de la racine, alors le chemin partira à partir de la racine (l'include ou le require fait que ton fichier index contiendra les informations disséminé dans l'arborescence de ton site) Je pense ne pas avoir compris totalement, mais si tu avais un bout de code pour l'exemple, ou alors un shema? désolé, mais j'espère faire avancer le schmilblick... |
|
|
00
|
|
|
#3 | ||||||
|
Membre émérite
![]() Inscription : juin 2002 Messages : 1 013 ![]() |
je t'explique comment je fais pour remédier à ce genre de situation :
phase 1 : création de deux variables de session, l'une contenant le chemin d'accès à la racine, l'autre contenant le chemin d'accès au répertoire galerie. exemple phase 1 si ma page appelante est à la racine : Code :
Code :
phase 2 : je fais mes include et tous mes liens dans le menu en faisant référence à ces variables de session exemple d'un lien dans le fichier menu.php : Code :
echo '<a href="', $_SESSION['path_racine'], 'index.php">accueil</a>'; phase 3 : j'ai créé une fonction à laquelle je fais systématiquement appel dans chaque page. Cette fonction créera les variables de session nécessaires. Exemple de ma fonction : Code :
si la page est dans le répertoire galerie, donc dans le niveau 1 : PS : cette fonction est stockée dans ma bibliothèque de fonctions dont l'appel se fait dans ma première instruction par un include (après session_start bien sûr). J'espère avoir été assez clair et avoir répondu à ton souci |
||||||
|
|
00
|
|
|
#4 |
|
Invité régulier
![]() Inscription : mai 2004 Messages : 35 ![]() |
merci de votre aide !
en attendant vos reponse j'ai fait une modif. au lieu d'avoir les liens du type : Code :
<img src="images/images-index/btn_galeries.jpg" Code :
<img src="http://www.forgotten.stars.free.fr/images/images-index/btn_galeries.jpg" du coup tout marche sans probleme et je pense que si je l'avais fait plus tot je me serai pas pris la tete comme se fut le cas. merci encore de votre aide. did |
|
|
00
|
|
|
#5 |
|
Membre émérite
![]() Inscription : juin 2002 Messages : 1 013 ![]() |
oui bien sûr ta modification fonctionne
mais j'espère que tu la considères comme provisoire car elle crée deux problèmes :
|
|
|
00
|
|
|
#6 |
|
Invité régulier
![]() Inscription : mai 2004 Messages : 35 ![]() |
j'ai pensé exactement a ces 2 problemes lorsque je fait cette modif' en particulier en local.
pour le moment c'est du provisoire mais ça ne saurait tarder où le site sera vraiment bien optimisé ! je vais investir dans un bon bouquin de php et m'y plonger serieusement surtout concernant les sessions qui je pense une fois qu'on sait les gerer doivent regler un grand nombre de soucis. d'ailleur si vous pouvez me guider vers un ouvrage complet, serieux et avec pas mal d'exemples/exercices je vous en serait reconnaissant ! merci a tous en cas pour votre patience et votre aide tant indispensable pour les debutants ! did |
|
|
00
|
|
|
#7 |
|
Membre émérite
![]() Inscription : juin 2002 Messages : 1 013 ![]() |
je n'ai pas lu de bouquins, seulement des tutoriels ici et là
mais les sessions c'est très simple tu lis http://php.developpez.com/cours/sessions/ et cela suffira et après tu prends le code que je t'ai indiqué plus haut et ton problème est réglé |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com