Vive le SSD
J'ai testé et ça marche
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
Si la discussion est résolue, merci de cliquer sur le bouton
J'ai fait des tests supplémentaires et j'ai des soucis avec les includes (les images, ça marche et le css, sais pas). Pour les includes, si je le fais depuis un répertoire (donc non à la racine), ils ne se font pas. Leur code est de ce type : include "/menu.php";(j'ai aussi essayé include("/menu.php");.
EDIT : je viens de tester le css ; il est aussi pris en compte...
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
Si la discussion est résolue, merci de cliquer sur le bouton
Bonjour Laurent,
NON, c'est inutile !
Je développe aussi en local, et ça ne pose pas de problème : chaque site est dans son propre dossier.
Voici un moyen d'écrire un chemin absolu en local, et le modifier très simplement dès que tu passes en production.
1/ un ficher de config, qu'on appellera... "config.php", mis dans le dossier... "config" :
Arborescence :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 <?php // ----------------------------------------------------------- // CONFIGURATION : // ----------------------------------------------------------- if(!defined('SITE_URL_WWW')) define('SITE_URL_WWW', 'localhost/devjupiter'); // en TEST LOCAL, A REMPLACER PAR... //if(!defined('SITE_URL_WWW')) define('SITE_URL_WWW', 'www.mon-site-en-ligne.com'); // en PRODUCTION if( !defined('SITE_URL_HTTP')) define('SITE_URL_HTTP', 'http://'.SITE_URL_WWW.'/');
en local, le dossier "config" est dans le dossier "devjupiter".
En prod. le dossier "config" est à la racine.
2/ Ecrire les chemins absolus, pour les images et les feuilles CSS :
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <img src="<?php echo SITE_URL_HTTP; ?>/images/mon-images.jpg" alt="..." /> <link type="text/css" rel="stylesheet" href="<?php echo SITE_URL_HTTP; ?>/css/styles.css" media="all" />
3/ Maintenant, il faut.... inclure (!!!) le fichier "config.php" dans tes fichiers.
C'est là qu'est l'os...
SI le fichier dans lequel est écrit le code d'include (très important) est à la racine, c'est-à-dire dans "devjupiter" (en local) :
SI le fichier est dans le dossier "calendrier", c'est-à-dire dans "devjupiter/calendrier" (en local),
Code php : Sélectionner tout - Visualiser dans une fenêtre à part <?php include (__DIR__.'/config/config.php'); ?>
On doit descendre de "calendrier", avant de remonter dans "rep_config" :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part <?php include (dirname(__DIR__).'/config/config.php'); ?>
Tu fais pareil pour tous tes fichiers à inclure (menu.php,...)
Intérêt de dirname(__DIR__) :
le fichier dans lequel est écrit le code d'include peut lui-même être inclus dans un autre (lui-même inclus ailleurs,....), à un autre emplacement,... :
CELA NE CHANGE PAS le code !
Compris ?
Dernière modification par Invité ; 29/11/2014 à 03h46.
Oui, compris, et c'est génial
Grâce à ta méthode, mes includes marchent...
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
Si la discussion est résolue, merci de cliquer sur le bouton
Jérôme, quand j'avais dit "génial", j'étais déjà très content, mais je n'avais utilisé que partiellement ta solution ; je viens de l'appliquer entièrement et elle est vraiment géniale...
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
Si la discussion est résolue, merci de cliquer sur le bouton
Bravo Laurent,
tu progresses !
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager