IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Classe Pour Connexion [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Urbaniste
    Inscrit en
    Novembre 2014
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Urbaniste

    Informations forums :
    Inscription : Novembre 2014
    Messages : 26
    Par défaut Classe Pour Connexion
    Bonjour,

    je regarde actuellement plusieurs tuto et livres pour réaliser un site et me connecter à une base de donnée.

    * Beaucoup de tuto créent une classe connexion (avec attributs host, port, name, pass inclus dans la classe) + des classes pour déférentes actions

    * J'ai un livre ou ils réalise une seule classe connexion (avec attributs host, port, name, pass inclus dans la classe) toutes les actions sont dans cette classe unique.

    * Quelques tuto créent une classe connexion, mais avec un fichier config externe pour les variables : host, port, name, pass (mais souvent ne donnent pas la méthode pour les inclures, considèrent que cela n'est pas l'objet du tuto).

    Faut-il mieux :

    1°) Une classe utilisateur globale (avec connection à la base) + une classe administrateur globale(avec connection à la base)
    OU une classe connexion (spécifique) + DES classes utlisateurs pour chaques actions + DES classes administrateur pour chaques actions


    2°) Avec un fichier config externe faut-il mieux définir host, port, name, pass, comme des variables ou comme des constantes (niveau sécurité et portabilité dans les classes action) ????

  2. #2
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2012
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2012
    Messages : 60
    Par défaut
    Bonjour,

    Le principe de la POO est que chaque classe correspond à un besoin particulier, ce qui fait que les classes peuvent être réutilisable d'un projet à l'autre.
    1)
    Si tu fais une classe unique (Connection + administration + Utilisateur), si tes besoins d'un projet sur l'autre changent vis a vis par exemple de l'utilisateur (pas les memes informations stockés)
    tu seras obligés de modifier de fait la page qui gere aussi l'administration + la connexion, ce qui peut entraîner des bugs supplémentaires.

    Il vaut mieux avoir une classe connexion qui gere tout ton CRUD (Create, Read, Update, Delete), une classe qui gere les elements utilisateurs (nom, prenom, date de naissance).
    et surtout limité au maximum les interdependances entre les classes.

    Par exemple, si tu veux créer un nouvel utilisateur en base, il vaut mieux créer la requete SQL au sein de la classe utilisateur et envoyer le resultat à ta classe connexion qui lui se chargera de faire les modifications en base, plutot que de faire faire le travail par ta classe connexion. (J'espere etre clair :/)

    2) En principe en variable privées de ta classe connexion, cela suffit largement, normalement tu ne devrais pas avoir besoin de ton user/mdp de base de données en dehors de ta classe connexion, après tu peux très bien les mettres en constante privées, je ne vois pas specialement le danger.

  3. #3
    Membre averti
    Homme Profil pro
    Urbaniste
    Inscrit en
    Novembre 2014
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Urbaniste

    Informations forums :
    Inscription : Novembre 2014
    Messages : 26
    Par défaut
    Si je comprend bien vouloir faire un fichier externe à ma classe connexion style config.php pour créer des constantes HOST, PASS, LOGIN ne sert à rien.

    Faut mieux mettre les constantes directement dans la calsse connexion

  4. #4
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2012
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2012
    Messages : 60
    Par défaut
    Un fichier de config peut etre utile pour ne vraiment plus avoir a touché à ta classe de connexion entre deux projets, c'est le cas pour les frameworks où la classe qui gere les connexions est dans le coeur du framework et qu'il serait vraiment casse pied de le modifier.

    Pour les petits projets sans trop de complexité tu peut te réduire à mettre les informations de connexions directement dans la classe, surtout si elle n'est pas destiné à etre exporté, sinon il est préférable de créer un fichier de conf bien séparé.

    Si tu estime que créer un fichier de configuration rendra la lisibilité de ton projet plus complexe, mieux vaut mettre les informations dans la classe.
    Si tu as beaucoup de fichiers et une arborescence un peu complexe, mieux vaut un fichier de configuration dans un dossier facile d'accès.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PDO] PDO et class pour la connexion : impossible d'afficher les résultats
    Par neovea dans le forum PHP & Base de données
    Réponses: 13
    Dernier message: 25/02/2013, 14h35
  2. Réponses: 2
    Dernier message: 28/02/2011, 09h45
  3. [ODBC] Classe pour connexion ODBC et DB2/Iseries
    Par fmonnot dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 10/12/2010, 18h00
  4. Classe pour la création d'un graphe xy
    Par Bob dans le forum MFC
    Réponses: 24
    Dernier message: 03/12/2009, 17h20
  5. Diagramme des classes pour l'interface visuel
    Par robv dans le forum Diagrammes de Classes
    Réponses: 2
    Dernier message: 25/06/2004, 10h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo