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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
|
<?php
require_once 'config.php'; // constantes
require_once 'class_mysql.php';
$db = new Mysql();
$listesPages = $db->returnListe(
array(
"table" => pages,
"id,titre"
)
);
class Mysql {
protected $connect;
protected $host;
protected $db;
protected $login;
protected $password;
public function __construct(){
$this->setHost(DB_HOST);
$this->setDb(DB);
$this->setLogin(DB_LOGIN);
$this->setPassword(DB_PASSWORD);
}
/*
* fonction qui se connecte à un serveur et une db Mysql
* @host : serveur
* @login : login de connexion
* @password : mot de passe de connexion
* $db : nom de la base
*/
protected function connectDb(){
try {
$db = new PDO('mysql:host='.$this->host.';dbname='.$this->db.'', ''.$this->login.'', ''.$this->password.'');
$db->setAttribute(PDO::ATTR_CASE, PDO::CASE_LOWER); // les noms de champs seront en caractères minuscules
$db->setAttribute(PDO::ATTR_ERRMODE , PDO::ERRMODE_EXCEPTION); // les erreurs lanceront des exceptions
$this->connect = $db;
}
catch (PDOException $e){
echo "Connection à la base de donnée impossible" .
"<br/>" . $e->getMessage().
"<br/> LINE : " . $e->getLine();
}
}
/*
* Fonction qui sélectionne une liste
* @arrayReq : tableau pour construire une requête
* @arrayReq['table'] = table à sélectionnée
* @arrayReq['fiels'] = champs à sélectionner, tous les champs si vide
* @arrayReq['condition'] = condition après le where sans le WHERE
*/
public function returnListe($arrayReq){
$conx = $this->connectDb();
$table = $arrayReq['table'];
$fields = (!isset($arrayReq['fiels'])) ? '*' : $arrayReq['fiels'];
$condition = (!isset($arrayReq['condition'])) ? '' : 'WHERE' . $arrayReq['condition'];
$select = $conx->prepare('SELECT '.$fields.' FROM '.$table.''.$condition.'');
$select->execute();
$return = $select->fetchAll();
return $return;
}
// Sets
protected function setHost($host){
$this->host = $host;
}
protected function setLogin($login){
$this->login = $login;
}
protected function setPassword($password){
$this->password = $password;
}
protected function setDb($db){
$this->db = $bd;
}
// gets
public function getConnect(){
return $this->connect;
}
} |
Partager