<?php
class Mysql{
//Méthode de classe = static
/**
* Etablit une connexion à Mysql
* @Param $host
* @Param $dbname
* @Param $user
* @Param $password
**/
public static function connect($host,$dbname,$user="root",$password=""){
$dbh=null;
try{
$dbh = new PDO('mysql:host='.$host.';dbname='.$dbname, $user, $password);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch(PDOException $ex){
echo $ex->getMessage();
}
return $dbh;
}
/**
* Retourne la liste des tables de la base de données définie dans $connection
* @Param $connection connexion PDO à Mysql
**/
public static function getTables($connection){
$sql="show tables;";
return Mysql::getQueryResult($connection,$sql);
}
/**
* Retourne la liste des champs de $table
* @Param $table nom de table
* @Param $connection connexion PDO à Mysql
**/
public static function getColumns($connection,$table){
$sql="show columns from ".$table.";";
return Mysql::getQueryResult($connection,$sql);
}
/**
* Retourne un curseur correspondant à $sql
* @Param $sql Instruction sql à exécuter
* @Param $connection connexion PDO à Mysql
**/
public static function getQueryResult($connection,$sql){
return $connection->query($sql);
}
/**
* Affiche un curseur
**/
public static function showResult($result){
foreach($result as $row){
foreach($row as $field){
echo ($field." ");
}
echo "<br>";
}
}
}