Error include_path lors de mes includes

Petit nouveau ! | 1 Messages

15 sept. 2014, 05:34

Bonjour , en codant mon site et j'ai fait beaucoup de portion de page je vous les relier par require ou include mais j'ai réçu une message d'erreur me disant que je dois configurer mon chemin d'accèss pour les dossiers , je n'ai pas accès au fichier php.ini j'ai tenté de le faire dans mon htaccess cela me renvoie une autre message d'erreur me referant sur la configuration du serveur

ynx
Mammouth du PHP | 586 Messages

15 sept. 2014, 15:14

Salut,

Le chemin vers tes fichiers ne doit pas être correct. Vérifie tes chemins et/ou utilise des chemins absolus.

Sinon montre nous un exemple de tes include/require en nous précisant l'organisation de tes fichiers et dossiers.

Bonne journée

Mammouth du PHP | 2278 Messages

15 sept. 2014, 17:25

Développement de ynx:
1)
Fichier incluant.php en /var/www/html/monapp
Fichier inclus.inc en /var/www/html/monapp/inclusions
l'inclusion dans incluant.php se fait par include ("inclusions/include.inc");
2)
Fichier incluant.php en /var/www/html/monapp/gestion
Fichier inclus.inc en /var/www/html/monapp/inclusions
l'inclusion dans incluant.php se fait par include ("../inclusions/include.inc");
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

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

15 sept. 2014, 22:52

Salut,

C'est configurable au runtime http://fr2.php.net/manual/en/function.s ... e-path.php

C'est une bonne idée d'utiliser cette fonction si tu es certain d'avoir toujours le même point d'entrée sinon tu auras le même problème.

Si tu utilise la poo tourne toi vers un auto loader (psr-0 ou psr-4).

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

Mammouth du PHP | 2278 Messages

16 sept. 2014, 09:28

Salut,

C'est configurable au runtime http://fr2.php.net/manual/en/function.s ... e-path.php

C'est une bonne idée d'utiliser cette fonction si tu es certain d'avoir toujours le même point d'entrée sinon tu auras le même problème.

Si tu utilise la poo tourne toi vers un auto loader (psr-0 ou psr-4).

@+
1) Ca dépend des distributions de Linux. Je ne suis pas sûr que Debian le permettte.
2) OUI pour les include de php et peut-être de paquets supplémentaires qui peuvent être ailleurs que ceux standard de php. Pour les applications perso, je suis moi auqssi réservé
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

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

17 sept. 2014, 14:49

1/ je ne vois pas ce que la distrib viens faire la c'est une fonction du cœur de php. A la limite elle peut être désactivée dans le php.ini mais j'en vois pas l'intéret

2/Le truc en fait c'est que cela permet d'éviter les problème lorsque tuas une appli qui utilise un système genre pseudo frame, mais que les fichier s'inclue en cascade tu finis par ne plus trop savoir comment créer les includes (relatif absolue, mais faut gérer la racine etc.).
avec l'include path tu ne t'en soucis c'est fait à l'initialisation de la page.
Perso je l'utilise pour avoir un répertoire librairies "tierces" (genre phpmailer et consort) et les dev de l'appli autre part.
au final je ne fait que des includes relatif toujours résolus grâce à l'include path.

Effectivement c'est aussi du à un problème de conception de l'application ( >10ans dans mon cas) qui mène à ce genre de problème et qu'il est possible de faire surement aussi propre autrement.
autre cas aussi initéressant : un fichier phar cela peux être pratique de gérer correctement ce cas sans prise de tête.

ceci dit je reste plus adepte de la poo et l'autoload c'est bien pratique :)


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