probleme variables avec include()

Eléphant du PHP | 217 Messages

05 janv. 2007, 22:08

Salut,
il y a des moyens simple de palier à tous ces soucis :
un fichier de configuration avec quelques constante définies :
fichier : includes/config.inc.php par exemple avec dedans (par exemple) :
define('INC_DIR',dirname(__FILE__));
define('GAUCHE_DIR',INC_DIR.'/../gauche');

Le but étant d'avoir un répertoire de base pour tes inclusions. Ensuite tu inclu s tes fichier relativement à ce répertoire :
// inclusion de la conf
include('includes/config.inc.php');

include(GAUCHE_DIR.'/monScript.inc.php');
include(INC_DIR.'/../autre_rep/autreFichier.php');

Enfin c'est ce que j'utilise personnelement, peut être y a-t-il d'autres méthodes plus pratique.

zarbrok
Invité n'ayant pas de compte PHPfrance

05 janv. 2007, 23:05

tout d'abord merci de votre aide, ça réconforte ...
sinon, donc comme je l'ai dit précedement, je déplace un site contenant pas moins de 2 ou 300 pages interconnectées entre elles par des tats d'inclusions de toutes sortes.
mes employeurs etant des gens pressés, je n'ai pas vraiment le temps de reconstruire le site à ma manière.
le site marchait donc tres bien sur son serveur initial, mais sur ce serveur plesk, tout fonctionne, sauf ça !!!
donc ça fait bien 3 jours que je cherche et je ne vois rien.
merci qd meme

zarbrok
Invité n'ayant pas de compte PHPfrance

09 janv. 2007, 19:37

salut
j'ai trouvé une solution de bricolage, mais une solution qd meme
je fais des include"http://monsite.com/mapage.php?madonee=$ ... =$variable..."
et ça marche, mais je pense qd meme qu'il doit y avoir une solution plus simpe

Mammouth du PHP | 505 Messages

09 janv. 2007, 21:04

si tu nous donnais un appercu de l'arborescence exacte,
du resultat de getcwd() et la ligne d'include qui ne fonctionne pas, on pourrait certainement te trouver la réponse. Ton include_path actuel et celui que tu avais sur ton serveur d'origine.

exemple :

Code : Tout sélectionner

Arbo /inc /css /lib/sect1 /lib/sect2 /js /home
l'url appelé est http:/home/index.php, le fichier index.php se trouve dans /home
Le getcwd retourne /sg/dev/www/home/

l'include qui échoue est include(../lib/sect1/lib1.inc)


Avec un énoncé de ce type, il est bien plus facile de répondre précisément.