Accueil | Theme | "Ils ont compris que le danger sortait de l'ombre, Que l'Europe était visée depuis les attentats de Londres" [1/58]

Class PDO pour mysql

Pour ceux qui comprennent... xD


<?php

class pdomysql {

    private 
$dbh;

    private 
$host;

    private 
$user;

    private 
$pass;

    private 
$name;

    public 
$nEntree;

    
/**

    * constructeur

    */

    
public function __construct($host DB_HOST$user DB_LOGIN$pass DB_PASS$name DB_BASE) {

        
$this->host $host;

        
$this->user $user;

        
$this->pass $pass;

        
$this->name $name;

    }

    
/**

    * @param void

    * @return boolean

    * @permet de d'établir la connexion à SQL

    */

    
private function connect() {

        if (
$this->dbh == null) {

            try {

                
$idString ='mysql:host='.$this->host.';dbname='.$this->name;

                
$this->dbh = new PDO($idString$this->user$this->pass);

                
$this->dbh->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);

            }

            catch(
Exception $e) {

                echo 
'Erreur ! : ' $e->getMessage();

                die();

            }

        }

        return 
true;

    }

    
/**

    * @param string rR : requête sql préparé (avec les ?)

    * @param array aArg : données à remplacer dans la requête sql

    * @return array contenant les informations demandé à sql

    * @permet de récupérer une ligne de la base de données

    */

    
public function GetLigne($rR,$aArg = array()) {

        
$this->connect();

        
$oPDOStatement $this->dbh->prepare($rR);

        if(
is_object($oPDOStatement)) {

            
$oPDOStatement->execute($aArg);

            
$result $oPDOStatement->fetch(PDO::FETCH_ASSOC);

            return 
$result;

        }

    }

    
/**

    * @param string rR : requête sql préparé (avec les ?)

    * @param array aArg : données à remplacer dans la requête sql

    * @return array contenant les informations demandé à sql

    * @permet de récupérer plusieurs ligne de la base de données

    */

    
public function GetAll($rR,$aArg = array()) {

        
$this->connect();

        
$oPDOStatement $this->dbh->prepare($rR);

        if(
is_object($oPDOStatement)) {

            
$oPDOStatement->execute($aArg);

            
$result $oPDOStatement->fetchAll(PDO::FETCH_ASSOC);

            
$this->nEntree count($result);

            return 
$result;

        }

    }

    
/**

    * @param string rR : requête sql préparé (avec les ?)

    * @param array aArg : données à remplacer dans la requête sql

    * @permet de faire une requête sans retour (update,insert,delete...)

    */

    
public function Query($rR,$aArg = array()) {

        
$this->connect();

        
$oPDOStatement $this->dbh->prepare($rR);

        if(
is_object($oPDOStatement))

            
$oPDOStatement->execute($aArg);

    }

    
/**

    * @param string rR : requête sql préparé (avec les ?)

    * @param array aArg : données à remplacer dans la requête sql

    * @return int le dernier id inséré via la requête insert

    * @permet de faire une requête insert et de recuperer l'id auto incrementer

    */

    
public function QueryIns($rR,$aArg = array()) {

        
$this->connect();

        
$oPDOStatement $this->dbh->prepare($rR);

        if(
is_object($oPDOStatement))

            
$oPDOStatement->execute($aArg);

        return 
$this->dbh->lastInsertId();

    }

    public function 
__destruct() {

        
$this->dbh NULL;

    }

}

$rR "insert into `test` (`champ`) values (?)";

$aArg = array("EnZ");

$sql = new pdomysql();

$sR $sql->QueryIns($rR,$aArg);

echo 
$sR;

?>



Commentaires

Aucun commentaire pour le moment.

Ajouter un commentaire

Code

Le code HTML dans le commentaire sera affiché comme du texte.

Ce blog est désigné par Mr.Pinoux
Ce blog est catapulté par un code fait maison
ba ouais ! Je fais de l'info mais pas comme Karl Zero © j0eBollos