Salut
Notice: Undefined variable: _CSS
Php indique que cette variable n'est pas définie, donc n'existe pas.
Soit elle n'est pas créée, soit elle se trouve dans un fichier non inclus, ou inclus après quelle soit exploitée.
Fait le point la dessus.
Attention tout de même, car il y a au moins 2 types de chemins, l'un orienté coté client (le navigateur) qui lui réclame une URL, et les chemins "physiques" pour le coté serveur.
Il ne faut pas confondre ces 2 aspects :
client (Navigateur) / serveur (hébergeur)
Un navigateur ne saura quoi faire avec un $_SERVER['DOCUMENT_ROOT'], c'est un chemin qu'il ne connait pas, il n'est pas installé sur lse serveur, mais il se trouve très loin, chez l'internaute, le visiteur.
Pour indiquer où ce trouve un fichier sur ton hébergeur (serveur), il lui faut une URL.
Après ça, dans les 2 cas il y aura un choix à faire, soit indiquer un chemin absolu, soit un chemin relatif.
Donc pour importer une feuille de style CSS, ou un fichier Javascript, il faut indiquer une URL, peu importe que ce soit un chemin absolu ou relatif (c'est exactement comme pour les liens).
A savoir aussi qu'un $_SERVER['DOCUMENT_ROOT'] peu ne pas retourner un chemin "physique" correcte. C'est rare à mon avis, mais ça peut être le cas.
Utiliser ce code est théoriquement plus fiable :
dirname(dirname(__FILE__))
Aussi, les include() et autre require() sont directement liés aux include_path(), il peut être intéressante d'exploiter la fonction set_include_path().
Exemple :
1 2 3 4 5 6
|
// ceci :
set_include_path(get_include_path().PATH_SEPARATOR.dirname(dirname(__FILE__)));
// Ou ça
set_include_path(get_include_path().PATH_SEPARATOR.$_SERVER['DOCUMENT_ROOT']); |
En somme, on définirait quelques chemins clés (physiques), 1 ou 2, qui permettra d'indiquer des chemins absolus pour inclure, donc plus simples.
Partager