\Bdd

Classe Bdd, d'accés au base de données.

Elle fait office d'abstraction légère de base de données en utilisant diverses possibilités d'accès aux bases de données (PDO, mysql, mysqli, SQLite3). Les valeurs pour le paramètre 'bdd_abstraction' du fichier config.ini sont : pdo, mysql, mysqli, sqlite3 Vous pouvez aussi utiliser : "php:Bdd::ABSTRACTION_PDO","php:Bdd::ABSTRACTION_MYSQL", "php:Bdd::ABSTRACTION_MYSQLI", "php:Bdd::ABSTRACTION_SQLITE3". Elle peut être étendue, pour ajouter le support d'autres bases de données où prendre en compte des méthodes spécifique à un type d'abstraction.

Summary

Methods
Properties
Constants
__construct()
requeter()
recuperer()
recupererTous()
proteger()
protegerTableau()
recupererIdDernierAjout()
__destruct()
No public properties found
ERREUR_REQUETE_TPL
ERREUR_CONNEXION_TPL
ERREUR_SELECTION_BDD_TPL
ABSTRACTION_PDO
ABSTRACTION_MYSQL
ABSTRACTION_MYSQLI
ABSTRACTION_SQLITE3
MODE_ASSOC
MODE_OBJET
initialiserProtocole()
connecter()
requete()
requeteUn()
requeteTous()
$ASSOC
$OBJECT
$abstraction
$dsn
$type
$hote
$bdd_nom
$utilisateur
$pass
$encodage
$connexion
$parametres_obligatoires
N/A
protegerChaine()
No private properties found
N/A

Constants

ERREUR_REQUETE_TPL

ERREUR_REQUETE_TPL

Constante stockant le squelette du message en cas d'erreur de requête sql.

ERREUR_CONNEXION_TPL

ERREUR_CONNEXION_TPL

Constante stockant le squelette du message en cas d'erreur de connexion à la base de données.

ERREUR_SELECTION_BDD_TPL

ERREUR_SELECTION_BDD_TPL

Constante stockant le squelette du message en cas d'erreur de sélection de la base de données.

ABSTRACTION_PDO

ABSTRACTION_PDO

Constante stockant le code pour l'abstraction de PDO.

ABSTRACTION_MYSQL

ABSTRACTION_MYSQL

Constante stockant le code pour l'abstraction de mysql.

ABSTRACTION_MYSQLI

ABSTRACTION_MYSQLI

Constante stockant le code pour l'abstraction de mysqli.

ABSTRACTION_SQLITE3

ABSTRACTION_SQLITE3

Constante stockant le code pour l'abstraction de SQLite3.

MODE_ASSOC

MODE_ASSOC

Constante stockant le code pour le mode tableau associatif des résultats des requêtes.

MODE_OBJET

MODE_OBJET

Constante stockant le code pour le mode objet des résultats des requêtes.

Properties

$ASSOC

$ASSOC

Mode de fetch associatif

$OBJECT

$OBJECT

Mode de fetch objet

$abstraction

$abstraction

abstraction de base de données utilisée

$dsn

$dsn

DSN pour accéder à la base de données

$type

$type

Type de base de données (mysql, mysqli, etc .

..)

$hote

$hote

Hote herbergeant la base de données

$bdd_nom

$bdd_nom

Nom de la base de données à laquelle le modèle doit se connecter

$utilisateur

$utilisateur

Nom d'utilisateur

$pass

$pass

Mot de passe

$encodage

$encodage

Encodage de la base de données

$connexion

$connexion

Connexion à la base de données

$parametres_obligatoires

$parametres_obligatoires

Tableau des noms des paramètres à définir dans le fichier de config car obligatoirement nécessaire à cette classe.

Methods

__construct()

__construct()

Constructeur par défaut, appelé à l'initialisation.

requeter()

requeter( $requete) : mixed

Execute une requête et retourne le résultat tel que renvoyé par l'abstraction courante.

Parameters

$requete

Returns

mixed —

un objet contenant le résultat de la requête

recuperer()

recuperer( $requete,  $mode) : mixed

Execute une requête et retourne le premier résultat sous forme de tableau (par défaut) ou d'objet.

Les noms des champs de la base de données correspondent aux noms des clés du tableau ou aux noms des attributs de l'objet.

Parameters

$requete
$mode

Returns

mixed —

un objet ou un tableau contenant le résultat de la requête

recupererTous()

recupererTous( $requete,  $mode) : array

Execute une requête et retourne un tableau de résultats. Un résultat peut être présentés sous forme de tableau (par défaut) ou d'objet.

Les noms des champs de la base de données correspondent aux noms des clés du tableau résultat ou aux noms des attributs de l'objet résultat.

Parameters

$requete
$mode

Returns

array —

un tableau contenant les résultats sous forme d'objets ou de tableau (par défaut).

proteger()

proteger( $donnees) : mixed

Protège une chaine de caractères ou le contenu d'un tablea avant l'insertion dans la base de données (ajout de quotes ou guillemets).

Parameters

$donnees

Returns

mixed —

la chaine ou le tableau à protégé

protegerTableau()

protegerTableau(array $tableau)

Parameters

array $tableau

recupererIdDernierAjout()

recupererIdDernierAjout( $parametres) : mixed

Retourne l'identifiant de la dernière ligne insérée, ou la dernière valeur d'une séquence d'objets, dépendamment, dans le cas de PDO, du driver utilisé. Les méthodes utilisées pour retourner l'identifiant peuvent avoir des comportements différent. Consulter la documentation PHP correspondant à l'abstraction choisie avant de l'utiliser :

Parameters

$parametres

Returns

mixed —

le dernier identifiant de clé primaire ajouté dans la base de données (string ou int).

__destruct()

__destruct()

Destructeur de classe, se contente de fermer explicitement la connexion à la base de donnée.

initialiserProtocole()

initialiserProtocole()

Initialise les constantes de classe à leur bonne valeur et déclenche une erreur si le protocole n'est pas bien défini.

connecter()

connecter()

Connection à la base de données en utilisant les informations fournies par le fichier de configuration.

Cette méthode est private et final car elle n'a pas vocation a être appelée par l'utilisateur. TODO : il est peut être nécessaire pour MYSQL, MYSQLi et SQLITE3 afin d'éviter les boucles infinis d'erreur quand la bdd n'est pas configuré d'utiliser : $this->connexion->query (comme pour PDO)

requete()

requete( $requete)

Parameters

$requete

requeteUn()

requeteUn( $requete,  $mode)

Parameters

$requete
$mode

requeteTous()

requeteTous( $requete,  $mode)

Parameters

$requete
$mode

protegerChaine()

protegerChaine( $chaine) : string

Protège une chaine de caractères avant l'insertion dans la base de données (ajout de quotes ou guillemets).

Parameters

$chaine

Returns

string —

la chaine protégée