1

J'execute un script écrit en php (c'est pas vraiment une page web), en faisant:

php toto.php

là tout va bien, ça marche. Mais quand je fais

cd ..
php laOuJetais/toto.php


ca marche plus, plus exactement c'est require qui marche plus.
D'après http://bugs.php.net/bug.php?id=9673 il faudrait mettre des trucs du style:

require(dirname(__FILE__) . "\..\second.php");

mais je veux me persuader que c'est pas possible qu'ils aient fait un fonctionnement différent du langage le plus connu du monde juste pour pouvoir apporter des difficultés au programmeur.
Est-ce le cas? Est-ce qu'on a constamment besoin de préciser le chemin absolu des fichiers qu'on include?
Tout ce qui passe pas par le port 80, c'est de la triche.

2

onur (./1) :
Est-ce qu'on a constamment besoin de préciser le chemin absolu des fichiers qu'on include?

C'est le plus sûr, précisément pour éviter le genre de cas que tu rencontres.
La portion de code que tu cites correspond à ce qu'on utilise généralement, oui -- sauf que là, avec les doubles quotes, utiliser des antislash est risqué (c'est le caractère d'échappement, comme en C) ; autant utiliser des simples quotes, et des slashes (ou DIRECTORY_SEPARATOR si tu es motivé)

Cf http://fr2.php.net/manual/en/function.include.php :
Files for including are first looked for in each include_path entry relative to the current working directory, and then in the directory of current script.




avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

3

même remarque que squale wink

toujours préciser en absolue grâce à dirname(__FILE__), car sinon l'include dépend de là où on exécute le script principal... et d'utilise des simples quotes, et des /

require_once(dirname(__FILE__).'/_mypdf/mypdf.class.php');
Ancien pseudo : lolo

4

f/mypdf.class.php');
Il y a chdir sinon :chdir(dirname(__FILE__));
require_once('./_mypd
avatar

5

mouais, pas tres proopre a mon gout, car ca peut avoir une incidence sur des scripts
Ancien pseudo : lolo