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

Langage PHP Discussion :

Autoload et PDO


Sujet :

Langage PHP

  1. #1
    Membre confirmé Avatar de Aizen64
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    561
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 561
    Points : 462
    Points
    462
    Par défaut Autoload et PDO
    Bonjour,

    Je suis en train de creuser la question des Autoload en PHP pour charger l'ensemble des outils dont j'ai besoin, l'autoload fonctionne (pour avoir récupéré la base de quelqu'un d'autre ça n'a pas été bien compliqué.

    Maintenant, il faut que je comprenne bien ce que je vois pour le ré appliquer.

    La partie accès aux données, du SQL utilise PDO, j'ai donc créé une classe abstraite qui sera à dériver en fonction de la table à utiliser.

    La définition de la classe de base d'accès aux données :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    namespace MonSite\Modele;
    use PDO;
     
    abstract class Modele
    {
     
    /* CODE DE LA CLASSE */
    }
    Mon fichier de conteneur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    return [
    	"settings" => [
    		"viewTemplatesDirectory" => "../templates",
    	    "displayErrorDetails" => true,
     
    		"db" => [
    			"pdoEngine" => "pgsql",
    			"host"      => "localhost",
    			"port"      => 5432,
    			"user"      => "monutilisateur",
    			"password"  => "monmotdepasse",
    			"dbname"    => "bdd"
    	    ],
     
    	    "phpMailer"     => [
    		    "host"      => "mail.domaine.com",
    	        "username"  => "nomutilisateur",
    	        "password"  => "monmotdepasse",
    	        "port"      => 587,
    	        "smtpAuth"  => true,
    	        "smtpSecure"=> "ssl"
    	    ],
    	],
    	'twig' => [
    		'title' => 'Mon site',
     
    	"db" => function($c) {
    		return $db = new PDO($c["settings"]["db"]);
    	},
    La fin du fichier d'autoload, qui charge ce dont le contrôleur 'Home' à besoin :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    	Home::class => function ($c) {
    		return new Home($c['view']);
    	}
    En fait, l'objectif est de lier à un contrôleur particulier n modèles qui correspondent aux tables à interroger.

    Est ce que ma question est claire ? j'utilise PSR-4 pour l'autoloading, Twig en moteur de template.
    Exprimer une différence d'opinion vaut mieux que :

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Ce n'est pas clair du tout pour moi :-(
    Qu'est-ce que tu veux faire?
    Et quel est le problème qui t'empêche de le faire?

Discussions similaires

  1. Mysql5, Procédure stockée et PDO::LastInsertId()
    Par Philsmile dans le forum SQL Procédural
    Réponses: 11
    Dernier message: 10/04/2006, 13h59
  2. [POO] Probleme avec static et autoload
    Par laetyboop dans le forum Langage
    Réponses: 1
    Dernier message: 23/03/2006, 14h46
  3. pdo mysql
    Par zenzo dans le forum Requêtes
    Réponses: 11
    Dernier message: 09/03/2006, 00h01
  4. [POO] PDO et fetch_INTO
    Par jeff_! dans le forum Langage
    Réponses: 6
    Dernier message: 25/01/2006, 14h22
  5. exemple de script avec autoloader
    Par djibril dans le forum Modules
    Réponses: 4
    Dernier message: 24/11/2005, 17h53

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