Constante dans un include

Eléphanteau du PHP | 30 Messages

26 juin 2013, 22:22

Bonjour, je travail actuellement sur un MVC et j'ai remarquer que dans un tutorial il y avais un require dans lequel on a mis une constante. J'ai essayer de réaliser la même chose sur mon site :
define('W_ROOT', '/~fruits/'); // SERVER
// ------------------------------> 
// Définitions des pages inclues
require (W_ROOT.'inclusions/config.php');
Cela ne marche pas du tout j'ai cette erreur :
Warning: require(/~fruits/.../config.php) [function.require]: failed to open stream: No such file or directory in /home/fruits/www/voir.php on line 9

Fatal error: require() [function.require]: Failed opening required '/~fruits/.../config.php' (include_path='.:/usr/share/php5') in /home/fruits/www/voir.php on line 9

Voilà si quelqu'un vois d'ou viens l'erreur.

Merci d'avance.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

26 juin 2013, 23:29

salut,

ton code est syntaxiquement correct.

Le message d'erreur ne correspond pas au code fournis.

a priori le fichier '/~fruits/.../config.php' n'existe pas.

déjà les 3 points c'est louche et deux ça voudrait dire que le fichier config est à la racine du système et la se serait le bordel.


@+
Il en faut peu pour être heureux ......

Eléphanteau du PHP | 30 Messages

26 juin 2013, 23:50

Salut et merci de ta réponse, j'avais mis les .. par mesure de sécurité au cas ou (inutile je sais ^^) en faite dans la constante je cherche à définir le chemin absolus pour mon fichier config et pouvoir l'inclure n'importe ou sur mon site. Le problème c'est que je n'arrive pas. Mon fichier inclusion se trouve dans un dossier include qui lui même se trouve sur mon dossier www.

ViPHP
ViPHP | 2577 Messages

27 juin 2013, 08:08

Il me semble que W_ROOT devrait contenir "/home/fruits/www/"
En supposant que tu souhaites inclure le fichier /home/fruits/www/inclusions/config.php

Il serait plus intéressant de mette le répertoire /home/fruits/www/inclusions dans l'include_path (fichier php.ini) pour pouvoir faire include('config.php') simplement.

Eléphanteau du PHP | 30 Messages

27 juin 2013, 17:55

Merci de ta réponse, bon bah ça me parer plus compliqué que prévu, je n'avais jamais entendu parler de l'inculde path j'ai du boulot x)
Merci encore.