Bonjour à tous,
Depuis que je me suis mis au MVC, je me heurte à un pb d'include que je ne parviens pas toujours à comprendre.
Voici un exemple (je tente de vulgariser ma problématique)
Mes fichiers s'organisent comme ceci :
./main.php
./controlers/ -> mes fichiers controlers
./views/ -> mes fichiers views
./models/ -> ... vous avez compris
./config/config.php
on peut considérer que main.php est le controler principal.
La main.php contient ceci :
./main.php
--include "./controlers/controler_a.php"
----include "./models/mod_a.php"
----include "./views/view_a.php"
Dans mod_a.php il y a un include "../config/config.php".
Dans view_a.php il y a un formulaire dont l'action renvoie vers le main.php comme ceci :
main.php
--include "./controler/controler_a.php"
----include "./models/mod_a.php"
----include "./views/view_b.php"
une fois que je valide mon formulaire j'ai le message suivant :
Pour que cela fonctionne il me faudrait, suite à la validation de mon formulaire, un path différent du précédent donc, include "./config/config.php"Warning: include(../config/config.php): failed to open stream: No such file or directory in D:/mod_a.php on line 4
Mais ceci n'arrange pas mes affaires !!! car dans le premier cas il me faut un path avec ../ et dans le deuxième cas, un path avec ./ seulement
Dans mes models, je fais en sorte que les fonctions soient utilisables par l'ensemble des fichiers, mais le path peut être différent.
Comment contourner ce problème pour éviter les pb de path ?
Merci
Partager