Quelle arborescence pour mon site ?
lloyd
-
sinda -
sinda -
Bonjour,
je suis partagé entre deux solutions quant à l'arborescence de mon site web : (je précise que je mets ds tous les cas l'index à la racine du site)
1. soit je crée des dossiers afin de bien tout ordonner, et pour savoir facilement ou trouver telle page
exemple :
-index.html
-dossier administration :
-.htaccess
-.htpasswd
-fichiers de mise jour du site
-dossier 1
-
-
-
...
2. soit je mets tout "en bordel" sans créer de dossier (tout a la racine quoi)
J'ai choisi le cas 1, ce qui parait logique, mais le pb c'est par exemple, lorsque je veux faire un "include menu.php", je suis obligé de faire un menu propre à chaque dossier ou sous dossier, car sinon les liens ne marchent pas en général :
il y a besoin selon les cas de liens du type "dossier1/menu.php", "menu.php","../menu.php", ou encore ca m'est arrivé de "../../menu.php"
et dans chaque element de menu ou il y a un lien il faut a chaque fois tt modifier...
bon mon explication est assez longue, mais j'espere que qqun aurait une solution a me proposer
merci d'avance de m'avoir lu
je suis partagé entre deux solutions quant à l'arborescence de mon site web : (je précise que je mets ds tous les cas l'index à la racine du site)
1. soit je crée des dossiers afin de bien tout ordonner, et pour savoir facilement ou trouver telle page
exemple :
-index.html
-dossier administration :
-.htaccess
-.htpasswd
-fichiers de mise jour du site
-dossier 1
-
-
-
...
2. soit je mets tout "en bordel" sans créer de dossier (tout a la racine quoi)
J'ai choisi le cas 1, ce qui parait logique, mais le pb c'est par exemple, lorsque je veux faire un "include menu.php", je suis obligé de faire un menu propre à chaque dossier ou sous dossier, car sinon les liens ne marchent pas en général :
il y a besoin selon les cas de liens du type "dossier1/menu.php", "menu.php","../menu.php", ou encore ca m'est arrivé de "../../menu.php"
et dans chaque element de menu ou il y a un lien il faut a chaque fois tt modifier...
bon mon explication est assez longue, mais j'espere que qqun aurait une solution a me proposer
merci d'avance de m'avoir lu
A voir également:
- Quelle arborescence pour mon site ?
- Site de telechargement - Accueil - Outils
- Site comme coco - Accueil - Réseaux sociaux
- Site pour vendre des objets d'occasion - Guide
- Quelle site remplace coco - Accueil - Réseaux sociaux
- Site pour partager des photos - Guide
22 réponses
personnellement, je met tout dans la racine sauf :
Les images
les anims flash
les sons
mais en général, mes sites sont pas très grands.
Les images
les anims flash
les sons
mais en général, mes sites sont pas très grands.
tout depend de a quoi ton site va servir ?
_____________________________________________
black-trinity@hotmail.fr
_____________________________________________
black-trinity@hotmail.fr
Bonjour,
ben moi je ne fai ke debuter dan ce domaine, mai g un excellent encadreur, alor voila ce ke je te propose:
1. tu cré un site a partir de l'option géré les sites (com ça té page seron tré bien organisé),
2. tu cré une page PHP au debut pas HTML ( c ce ki ta poser des probleme),
3. tu fai copié collé de ton fichier (site) ke tu a deja nomé a l'endroit suivant: C:\EasyPHP1-7\www (com ça ta page sera la page index par defaut).
apré la création de tés page (.php) tu peu facilement inclure ou inserer des objet PHP tel ke l'echo ou les variables de formulaire, etc....
je v pa trop te longuir, lastuce est ke tu doit créer une page .php pas .html.
et bn courage, jespere ke g t utile omoins.
ben moi je ne fai ke debuter dan ce domaine, mai g un excellent encadreur, alor voila ce ke je te propose:
1. tu cré un site a partir de l'option géré les sites (com ça té page seron tré bien organisé),
2. tu cré une page PHP au debut pas HTML ( c ce ki ta poser des probleme),
3. tu fai copié collé de ton fichier (site) ke tu a deja nomé a l'endroit suivant: C:\EasyPHP1-7\www (com ça ta page sera la page index par defaut).
apré la création de tés page (.php) tu peu facilement inclure ou inserer des objet PHP tel ke l'echo ou les variables de formulaire, etc....
je v pa trop te longuir, lastuce est ke tu doit créer une page .php pas .html.
et bn courage, jespere ke g t utile omoins.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Plutôt que de faire des insertions relatives ( ../../menu.php), qui sont spécifiques au dossier en cours, fais des insertions en absolu par rapport à la racine du serveur :
→ "/menu.php" , si le menu.php est à la racine (en clair, tu indiques l'adresse complete du fichier, en commencant par la racine /)
→ "/menu.php" , si le menu.php est à la racine (en clair, tu indiques l'adresse complete du fichier, en commencant par la racine /)
Bonsoir a tous et merci pour vos reponses,
en fait toutes mes pages ou presque sont en .php, mais il y a tjs le pb d'indexation
je vais jeter un oeil a tout ce que vous me proposez et je vous en reparle prochainement, ce soir j'ai le cerveau cramé a force de reflechir a tout ca ;p
pour repondre deja a blacktrinity, je suis en train de faire un "assez gros site", avec forum, et plusieurs rubriques, plus la mise a jour en ligne, d'ou je pense la necessité de bien classer tous les documents
je vous souhaite une bonne soiree
a+
en fait toutes mes pages ou presque sont en .php, mais il y a tjs le pb d'indexation
je vais jeter un oeil a tout ce que vous me proposez et je vous en reparle prochainement, ce soir j'ai le cerveau cramé a force de reflechir a tout ca ;p
pour repondre deja a blacktrinity, je suis en train de faire un "assez gros site", avec forum, et plusieurs rubriques, plus la mise a jour en ligne, d'ou je pense la necessité de bien classer tous les documents
je vous souhaite une bonne soiree
a+
salut,
moi je ne laisse que 'index' à la racine et tout le reste dans des dossiers.
pour les url je suis d'accord avec Gryzzly (bonjour lui !), si tu ne veux pas être embêté tu passes par une adresse absolue.
le problème c'est le développement en local…
tu peux utiliser une constante que tu ajoutes à chaque url, quand tu upload tu n'as qu'une valeur à modifier.
moi je ne laisse que 'index' à la racine et tout le reste dans des dossiers.
pour les url je suis d'accord avec Gryzzly (bonjour lui !), si tu ne veux pas être embêté tu passes par une adresse absolue.
le problème c'est le développement en local…
tu peux utiliser une constante que tu ajoutes à chaque url, quand tu upload tu n'as qu'une valeur à modifier.
define('ROOT', 'http://www.monsite.fr'); // dans un fichier de config include(ROOT.'dossier/fichier.ext'); // dans les autres fichiers
Bonjour a tous, me revoila ;
kwaio : ce que tu me dis, c'est de faire des dossiers specifiques il me semble, c'est ce que je faisais jusque la
minousert : excuse moi je n'ai pas tres bien compris :s mais comme je l'ai dit ttes mes pages sont .php ; sinon j'utilise wamp et non easyphp
gryzzly et dalida : ce que vous appelez adresses absolues, ce sont bien des adresses du style "http://monsite.com/index.php" ou "http://monsite.com/actu/news.php" ?
je pense que vous proposez la meilleure solution en effet, pour un site qui n'est pas en local, mais la je travaille surtout en local pr le moment
dalida, je crois que j'ai compris le truc de la constante, pourrais tu approfondir un peu s'il te plait ?
en tt cas merci a tous pour ces réponses et a bientot
kwaio : ce que tu me dis, c'est de faire des dossiers specifiques il me semble, c'est ce que je faisais jusque la
minousert : excuse moi je n'ai pas tres bien compris :s mais comme je l'ai dit ttes mes pages sont .php ; sinon j'utilise wamp et non easyphp
gryzzly et dalida : ce que vous appelez adresses absolues, ce sont bien des adresses du style "http://monsite.com/index.php" ou "http://monsite.com/actu/news.php" ?
je pense que vous proposez la meilleure solution en effet, pour un site qui n'est pas en local, mais la je travaille surtout en local pr le moment
dalida, je crois que j'ai compris le truc de la constante, pourrais tu approfondir un peu s'il te plait ?
en tt cas merci a tous pour ces réponses et a bientot
oui :
absolue : avec ou sans le nom du serveur au début (au minimum une adresse qui commences par / , càd qui commences à la racine du serveur)
La solution que te propose l'égyptienne, c'est justement de mettre dans une constante l'adresse root/racine du serveur :
CAS 1:
CAS 2:
CAS 3 :
SI en local tu travailles aussi a la racine du serveur :
et ensuite, tu n'a plus qu'a appeler toujours :
ce qui appelera si tu es dans le cas 1 ) :
ce qui appelera si tu es dans le cas 2 ) :
ce qui appelera si tu es dans le cas 3 ) :
absolue : avec ou sans le nom du serveur au début (au minimum une adresse qui commences par / , càd qui commences à la racine du serveur)
La solution que te propose l'égyptienne, c'est justement de mettre dans une constante l'adresse root/racine du serveur :
CAS 1:
define('ROOT', 'http://www.monsite.fr/'); // si tu travailles sur le serveur, à la racine
CAS 2:
define('ROOT', 'http://127.0.0.1/NOM_DOSSIER1/NOM_DOSSIER2/'); // si tu travailles en local, et que ton site en cours se trouve dans Dossier1/dossier2
CAS 3 :
SI en local tu travailles aussi a la racine du serveur :
define('ROOT', 'http://127.0.0.1/");
et ensuite, tu n'a plus qu'a appeler toujours :
include(ROOT.'dossier/fichier.ext'); // dans les autres fichiers
ce qui appelera si tu es dans le cas 1 ) :
https://www.pagesjaunes.fr/
ce qui appelera si tu es dans le cas 2 ) :
http://127.0.0.1/NOM_DOSSIER1/NOM_DOSSIER2/dossier/fichier.ext
ce qui appelera si tu es dans le cas 3 ) :
http://127.0.0.1/dossier/fichier.ext
salut et merci !
j'ai compris ! =)
j'ai encore deux petites interrogations :
1. la définition : define('root','http://monsite.fr/') je le mets dans un fichier a part du style "config.php" ? ensuite je dois l'appeler à chaque page par exemple ds <head> ??
2. qd tu ecris "http://127.0.0.1/", pour moi le 127.0.0.1 ca correspond à C:/wamp/www/site/ ?
++
j'ai compris ! =)
j'ai encore deux petites interrogations :
1. la définition : define('root','http://monsite.fr/') je le mets dans un fichier a part du style "config.php" ? ensuite je dois l'appeler à chaque page par exemple ds <head> ??
2. qd tu ecris "http://127.0.0.1/", pour moi le 127.0.0.1 ca correspond à C:/wamp/www/site/ ?
++
1. il faut utiliser un include je n'avais pas tt lu, c'est dc bien un fichier externe au m titre par exemple que le menu ;)
1) affirmatif
2) j'en sais rien, je conais pas wamp. En revanche, si ca peut t'eclairer, lorque sous easyphp, installé sous C:/prog files/easyphp/ ... je lance au travers d'un navigateur :
alors le php n'est pas interprété.
En revanche :
est intérprété
Mais comme je sais pas comment fonctionne wamp...
2) j'en sais rien, je conais pas wamp. En revanche, si ca peut t'eclairer, lorque sous easyphp, installé sous C:/prog files/easyphp/ ... je lance au travers d'un navigateur :
C:/prog files/easyphp/www/mon_fichier_qui_contient_du_php.php
alors le php n'est pas interprété.
En revanche :
http://127.0.0.1/mon_fichier_qui_contient_du_php.php
est intérprété
Mais comme je sais pas comment fonctionne wamp...
Salut,
Avec WANP5 tu cliques sur l'icône et puis sur "Localhost" tout en haut. Si tu n'a pas refusé l'installation du menu (après avoir choisie l'emplacement de www) tu auras un listing des dossiers qui ce trouve dans www. Et un lien vers phpinfo( ), phpmyadmin et SQLitemanager
La logique d'organisation veux que chaque dossier dans www représente un projet.
Si tu n'a pas installé le menu wanp5 tape dans l'adresse
Avec WANP5 tu cliques sur l'icône et puis sur "Localhost" tout en haut. Si tu n'a pas refusé l'installation du menu (après avoir choisie l'emplacement de www) tu auras un listing des dossiers qui ce trouve dans www. Et un lien vers phpinfo( ), phpmyadmin et SQLitemanager
La logique d'organisation veux que chaque dossier dans www représente un projet.
Si tu n'a pas installé le menu wanp5 tape dans l'adresse
http://localhost/site/
ca ne marche pas très bien :s
a la racine de mon site j'ai l'index et un dossier config dans lequel se trouve "menu.php" et "constante.php"
donc :
"c:/wamp/www/site/index.php"
"c:/wamp/www/site/config/menu.php"
"c:/wamp/www/site/config/constante.php"
il y a donc "constante.php" dans lequel j'ai écrit :
<?php
define('root', 'http://127.0.0.1/');
?>
puis qd je veux insérer mon menu ds l'index.php j'ai écrit :
<div id="menu">
<?php
include (root.'config/menu.php');
?>
</div>
malheureusement ca ne fonctionne pas, qu'est ce qui deconne ?
a la racine de mon site j'ai l'index et un dossier config dans lequel se trouve "menu.php" et "constante.php"
donc :
"c:/wamp/www/site/index.php"
"c:/wamp/www/site/config/menu.php"
"c:/wamp/www/site/config/constante.php"
il y a donc "constante.php" dans lequel j'ai écrit :
<?php
define('root', 'http://127.0.0.1/');
?>
puis qd je veux insérer mon menu ds l'index.php j'ai écrit :
<div id="menu">
<?php
include (root.'config/menu.php');
?>
</div>
malheureusement ca ne fonctionne pas, qu'est ce qui deconne ?
ta proposition me semble sur la bonne voie, c'est bien localhost
mais ca ne marche pas car le fichier "config.php" ou j'ai defini le "root" n'est pas a la racine, et donc pas ds le mm repertoire que l'index
mais ca ne marche pas car le fichier "config.php" ou j'ai defini le "root" n'est pas a la racine, et donc pas ds le mm repertoire que l'index
Ca ne devrait pas poser problème.
Est ce que tu pourrais nous montrer l'arborescence de ces fichiers (config, menu, page, etC...) . Il y a forcément une solution ;-)
Est ce que tu pourrais nous montrer l'arborescence de ces fichiers (config, menu, page, etC...) . Il y a forcément une solution ;-)
je vais essayer d'etre clair :
-index.php
-actu (dossier ou il y a l'actualité du site) :
-----news.php
-----actu1.php
-----actu2.php...
-config (la ou il y a le css...)
-----menu.php
-----design.css
-----constante.php (ou on a posé root = "http://localhost/site/")
-administration
-----fichiers .ht et mise a jour du site...
donc pour le moment a la racine, il y a l'index et trois dossiers : actu, config et admin
-index.php
-actu (dossier ou il y a l'actualité du site) :
-----news.php
-----actu1.php
-----actu2.php...
-config (la ou il y a le css...)
-----menu.php
-----design.css
-----constante.php (ou on a posé root = "http://localhost/site/")
-administration
-----fichiers .ht et mise a jour du site...
donc pour le moment a la racine, il y a l'index et trois dossiers : actu, config et admin
Tu comptes avoir une architecture beaucoup plus complexe ou pas (dossiers, sous dossiers, sous sous dossier....) ?
Est ce que c'est un site dynamique ou bien est ce que tu créés toi meme les nouvelles pages avant de les uploader ?
Si architecture simple et site "statique en php" :
Pourquoi n'appelerais tu pas la config ainsi :
include ("../config/constante.php"); excepté pour l'index, où tu appelerais include ("config/constante.php"); ?
dans ce cas on revient à l'adresse relative ...
Sinon, tu crées autant de constante.php qu'il y a de dossier... mais ca oblige a mettre a jour tous les fichiers...
je bloque... si j'ai une idée lumineuse, je sonne ;-)
Est ce que c'est un site dynamique ou bien est ce que tu créés toi meme les nouvelles pages avant de les uploader ?
Si architecture simple et site "statique en php" :
Pourquoi n'appelerais tu pas la config ainsi :
include ("../config/constante.php"); excepté pour l'index, où tu appelerais include ("config/constante.php"); ?
dans ce cas on revient à l'adresse relative ...
Sinon, tu crées autant de constante.php qu'il y a de dossier... mais ca oblige a mettre a jour tous les fichiers...
je bloque... si j'ai une idée lumineuse, je sonne ;-)