Exigences et bonnes pratiques

PHPCG analyse votre base de données de manière intelligente.
Pour obtenir les meilleurs résultats, il est recommandé de suivre quelques bonnes pratiques.


Votre base de données

  • Le nom de la base de données, les noms des tables et des champs :
    • *Vous devez utiliser uniquement des caractères alphanumériques minuscules/majuscules et des traits de soulignement (pas de tirets, d'espaces ou de caractères spéciaux).
      (pas de traits d'union, d'espaces ou de caractères spéciaux)
    • *NE DOIT PAS commencer par un chiffre
  • *Chaquetable DOIT avoir une clé primaire auto-incrémentée.
    La clé primaire auto-incrémentée permet à MySQL d'obtenir le LAST_INSERT_ID dans les instructions INSERT et de générer une erreur si l'insertion a échoué.
  • *Chaquetable DOIT utiliser le moteur InnoDB afin de prendre en charge les relations de clé étrangère.
  • **Les relations entreles tables doivent être correctement définies.
    Si votre schéma de base de données est construit avec les bonnes clés étrangères, PHPCG les détectera et vous permettra par exemple d'afficher les champs de votre choix de la table liée dans la liste de la table d'origine.

    Vous pourrez également choisir les champs à afficher dans vos formulaires.

    Par exemple, une table"produits" connectée à une table"catégories" avec products.categories_id = categories.id vous permettra de :

    • d'afficher les noms des catégories dans les listes de produits au lieu de leur identifiant
    • d'utiliser une liste déroulante dans vos formulaires dont les valeurs seront categories_id et les valeurs affichées seront les noms des catégories.
  • **Les types de champsdoivent correspondre aux valeurs attendues

* Absolument nécessaire
** Très souhaitable


Pourquoi ne pas prévoir la possibilité d'utiliser d'autres personnages ?

Il y a deux raisons à cela :

  1. Bien qu'il n'existe pas de norme officielle, certaines bonnes pratiques sont communément acceptées pour nommer les tables et les champs.
    Le respect de ces conventions permet d'avoir un code plus solide et d'éviter certains problèmes inutiles.
    Par exemple, les majuscules sont une source d'erreurs. Elles sont souvent difficiles à détecter car elles sont prises en compte par certains systèmes (sensibles à la casse) et pas par d'autres (insensibles à la casse). De plus, elles ne sont pas reconnues dans les URL.
  2. PHPCG analyse votre base de données de manière intelligente. L'utilisation d'un système de dénomination cohérent permet d'éviter de nombreuses analyses et conversions.
    Les noms des tables sont également utilisés pour générer des objets PHP, des formulaires et bien d'autres choses.

Outils pour vous aider à créer votre base de données

Il existe de nombreuses applications, gratuites ou payantes, pour construire votre base de données et gérer les types de champs, les contraintes et les relations entre les tables, la plus courante étant phpmyadmin, directement accessible sur les serveurs PHP.

Vous pouvez bien entendu utiliser l'application/le logiciel de votre choix selon vos préférences.

Cependant, nous vous recommandons l'excellent MySQL Workbench (le logiciel officiel publié par l'équipe MySQL), disponible gratuitement ici : https://www.mysql.com/products/workbench/

MySQL Workbench vous permet de construire simplement vos bases de données et de les synchroniser avec votre serveur.

Une fois installé et connecté à votre serveur, vous bénéficiez d'un outil fiable et efficace.

MySQL Workbench - Caractéristiques principales :

  • Créer/modifier/supprimer des tables et des champs
  • Créer des diagrammes par glisser-déposer
  • Créez des clés étrangères et des relations à partir de diagrammes en utilisant la fonction "glisser-déposer".
  • Synchronisation avec la base de données de votre serveur
  • Enregistrer et exporter dans plusieurs formats

Ouvrez le tutoriel vidéo sur MySQL Workbench

Page principale du tutoriel CRUD PHP