gestion des fichier et page web sur un site

Eléphanteau du PHP | 41 Messages

22 déc. 2019, 08:05

bonjour

je cherche a connaitre les meilleur pratique concernant la gestion des fichier present sur le site web.

par exemple, pour la gestion des pages web, comment mettre en place un systeme efficace qui permette de reorganiser la structure du site sans devoir ré écrire plein de bout de code,
par exemple imaginons un fichier config.php qui serait référencer par plusieurs pages web, comment le référencer dans un variable php pour qu'il puisse être déplacer ou meme éventuellement renommer sans trop de tracas.

et concernant l'organisation generale des fichier je souhaiterais savoir quelle sont les meilleur pratique.

grosF

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 8471 Messages

22 déc. 2019, 18:19

Il n'y a aucune raison pour déplacer ou renommer un fichier de config, c'est bien le seul fichier d'ailleurs qui ne doit pas changer car c'est lui qui peut intégrer des variables et donc rendre dynamique d'autres appels de fichiers.

En résumé, tu crée un fichier de config à la racine de ton projet par exemple, et tous tes scripts PHP iront le chercher au même endroit (en chemin relatif) puisqu'il est à la racine de ton projet.
En revanche dans ton fichier de config, tu peux déterminer le chemin d'autre fichier (config2.php, config_bdd.php, etc...) et là tu pourras modifier les références à ceux ci uniquement dans ton fichier de config principal pour que ce soit appliqué sur l'ensemble de ton site.
Mais il faut à minima un premier fichier de config stable.
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 41 Messages

22 déc. 2019, 20:52

utiliser mysql pour créer une table qui servirait de fichier config serait elle une idée pertinente ? ou est ce qu'un fichier config classique est plus facile a gerer

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 8471 Messages

23 déc. 2019, 11:25

Pour pouvoir te connecter à MySQL, tu vas avoir besoin des variables : nom de serveur, nom d'utilisateur, mot de passe, port...
Et en général on met ces variables... dans un fichier de config :-D

Un fichier de config classique sera généralement toujours plus performant que de faire une requête SQL sur chaque page pour récupérer la config.
Quand un site est lent, c'est souvent la bdd qui est le goulot d'étranglement.
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 41 Messages

23 déc. 2019, 11:29

ha ok,...
et si je créais un fichier de config charger de stocké les emplacement de tout mes fichiers, ce fichier de config serait généré par exemple a chaque update du site via un appel à la BDD et j'aurais ainsi une table de correspondance toujours a jour entre adresse des fichiers/variable/url et je ne sais quoi d'autre ?
rien ne m’empêcherai d'avoir alors un petit fichier qui stock seulement mes identifiant d’accès la la BDD et gère mes requêtes principales.

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

23 déc. 2019, 12:18

Salutations,

En fait, quel est ton besoin initial exactement ? Tu demandes s'il est pertinent de remplacer le fichier de config d'un site par des infos en base et comme l'a expliqué @rthur, la réponse est non, ce fichier étant de toute façon indispensable, ne serait ce que pour accéder à la base de données...
Maintenant la question c'est pourquoi voudrais tu déplacer ou renommer ce fichier ? Tu peux effectivement envisager de l'alimenter de façon dynamique (ça reste un fichier sur le serveur que php peut donc lire et modifier), mais quel intérêt à ce qu'il change de nom ou de place à chaque mise à jour ?
Bref, c'est quoi le vrai besoin du départ ? :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphanteau du PHP | 41 Messages

23 déc. 2019, 12:30

l'idée c'est de pas avoir a tout recoder a chaque fois et de trouver des solutions pour facilité la maintenance du site autant au niveau de sont interface utilisateur que de son organisation interne. je ne cherche pas a tout modifier a chaque mise a jours, juste a limité la casse en cas de refonte complete du site ^^

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 8471 Messages

23 déc. 2019, 12:36

Il faut que tu réfléchisses à l'architecture de ton application (càd l'arborescence des répertoires et des fichiers) et ensuite ceux là ne changent jamais.
Même en cas de refonte, il n'y a pas de raison valable de changer l'emplacement de tes fichiers.

Et bien sûr entre eux, les fichiers s'appellent de façon relative pour pouvoir changer d'hébergeur sans problème.

C'est ce que font tous les gros projets et ça marche très bien, donc je ne comprends vraiment pas pourquoi tu voudrai garder quelque part une liste d'emplacement de tes fichiers...
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 41 Messages

23 déc. 2019, 12:54

en fait je cherche surtout a avoir des avis sur les meilleur pratiques,... SQL c'etait plutot une idée comme ca ...

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 8471 Messages

23 déc. 2019, 16:55

La meilleure pratique est d'avoir une arborescence de fichiers qui ne change pas, et tu appelles alors tes fichiers via des liens relatif depuis tes scripts.

En fichier de config, tu mets les paramètres qui ne doivent quasiment jamais changé d'une installation à l'autre, par exemple les identifiants SQL.
Dans ta base de données, tu peux stocker les paramètres que tu permets à un utilisateur de modifier via un backoffice dans ton script par exemple.
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 41 Messages

23 déc. 2019, 17:02

qu'est ce que tu appelle back office exactement ?

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 8471 Messages

24 déc. 2019, 10:25

qu'est ce que tu appelle back office exactement ?
Un espace "Mon compte" où l'utilisateur connecté (ou l'admin) pourrait modifier ses paramètres
Quand tout le reste a échoué, lisez le mode d'emploi...