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 :

Librairie/Classe de connection Mysql simple et efficace


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2003
    Messages
    837
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Février 2003
    Messages : 837
    Par défaut Librairie/Classe de connection Mysql simple et efficace
    Bonjour à tous,

    Je suis tombé récemment sur un article d'une personne dans les forums dot net expliquant les bonnes pratiques d'utilisation d'un SGBDR en .NET.
    J'ai tout de suite appliqué ses regles tellement elles m'ont fait gagner de temps et surtout évité les problèmes !!!!
    En effet, le principal problème que je rencontre est l'oubli (malencontreux mais à qui cela n'arrive pas) d'echapper les caracteres ou autre.
    Aujourd'hui ce probleme est reglé pour mes softs .Net mais maintenant j'aimerai pouvoir faire la meme chose en PHP.
    Malheureusement, j'ai une sacré contrainte : je ne peux pas installer de module supplémentaire sur le serveur et je ne dois passer que par du code pur (donc librairies, classes...) sans avoir à toucher au serveur à proprement parler.
    C'est dommage car j'avais repéré PDO qui m'avait l'air d'etre vraiment bien, mais il faut l'installer...

    Donc ce que je recherche est simple : une librairie/Classe, qui me permette de préparer une requete Mysql propre puis dans laquelle j'insere ensuite mes données qui sont parsées automatiquement et surtout dont les caracteres spéciaux sont automatiquement échappés !

    Voici un exemple simplifié de ce qui se fait en .Net :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    MyConnection = new Connection("Serveur", "Login", "Mdp", "NomBase")
    MyQuery = "SELECT * FROM MaTable WHERE Id=@MonId"
    MaCommande = new Commande(MyQuery, Myconnection)
    MaCommande.AddText("MonId", Id)
    MaCommande.execute
    Donc vous voyez, le principe est vachement bien : on prépare une requete SQL avec les variables échappées avec un @ qui veut dire : ceci est une variable que je vais devoir récuperer et parser dans la requete.
    Ensuite, on pousse chaque variable grace à une méthode faite pour qui fonctionne un peu façon smarty (moteur de template). Enfin, on execute.

    Si vous connaissez quelque chose qui s'y apparente, je serais vraiment interessé de savoir ce que vous utilisez.

    Merci par avance,
    @ bientot

  2. #2
    Membre émérite
    Avatar de gwinyam
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 162
    Par défaut
    Ouais, tu peux faire des choses assez similaires en Java avec Hibernate.

    En PHP, tu pourrais utiliser un des nombreux framework existants, par exemple le ZendFramework possède tout un bloc consacré aux bases de données (voir Zend_Db). A mon avis, cela pourrait constituer ton bonheur sans que tu aies à revoir la structure de tes dev.

    Bon courage

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2003
    Messages
    837
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Février 2003
    Messages : 837
    Par défaut
    Salut,

    En effet, Zend_Db a l'air pas mal. Mais en terme de syntaxe et de facilité de lecture du code, c'est pas encore un must total (car bon, je peux pas dire non plus que ce soit infernal, ce serait exagéré). Un exemple de syntaxe qui ne me plait pas forcement : le fait de mettre toutes les variables au bout de la requete me parait assez longuet.
    De plus l'échappement n'est pas automatique, ce que je trouve assez dommage et ils utilisent un echappement à base d'antislash au lieu d'utiliser les fonctions type mysql_escape_string.

    Je pense que je vais méditer ça et voir si je repere d'autres frameworks du genre.
    Dans tous les cas, l'esprit y est et ça me plait pas mal !
    Si tu connais d'autres frameworks sympas comme ça, fais moi signe.

    Merci en tout cas !
    @ bientot

  4. #4
    Membre émérite
    Avatar de gwinyam
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 162
    Par défaut
    Ben il y a les classiques CakePHP et cie. Mais certains t'imposeront une structure pour ton développement, je crois que Cake par exemple t'imposera le modèle MVC. Contrairement au ZF qui te permet d'utiliser les classes séparément.

Discussions similaires

  1. [MySQL] Classe et connection à MySQL
    Par pconrad dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 18/01/2011, 14h34
  2. [JAR]Connection Mysql et jar executable
    Par Jones dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 01/04/2005, 14h27
  3. Nombre max de connections MySQL ?
    Par RorolePro dans le forum Requêtes
    Réponses: 2
    Dernier message: 21/11/2004, 14h16
  4. problème de connection mysql par tcp/ip
    Par leroyphil dans le forum Administration
    Réponses: 5
    Dernier message: 04/09/2003, 18h27
  5. [Kylix] Pb connection à Mysql
    Par Anonymous dans le forum EDI
    Réponses: 3
    Dernier message: 25/04/2002, 15h26

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