Class sql
Posté : 29 avr. 2007, 22:46
Bonsoir,
Merci
<?php
class sql
{
var $nbr_queries = 0;
function sql($host,$user,$pass,$db)
{
$this->connect = mysql_connect($host,$user,$pass);
if ($this->connect !== FALSE)
{
$this->db = mysql_select_db($db,$this->connect);
if ($this->db === FALSE)
{
mysql_close($this->connect);
$this->connect = FALSE;
die('Impossible de sélectionner une base de données.');
}
return TRUE;
}
die('Impossible de se connecter à la base de données.');
}
function sql_close($int)
{
if ($this->connect !== FALSE)
{
$this->connect = mysql_close($this->connect);
if ($int === 1) { echo '<p>Il y a eu '.$this->nbr_queries.' requêtes.</p>'; }
return $this->connect;
}
return FALSE;
}
function sql_change_db($db)
{
if ($this->connect !== FALSE)
{
$this->db = mysql_select_db($db,$this->connect);
if ($this->db === FALSE)
{
mysql_close($this->connect);
$this->connect = FALSE;
die('Impossible de sélectionner une base de données.');
}
return TRUE;
}
return FALSE;
}
function sql_query($query,$fetch_array = FALSE)
{
$this->query = $query;
if (!empty($this->query) AND $this->connect !== FALSE)
{
$this->result = mysql_query($this->query,$this->connect);
$this->nbr_queries++;
$this->error = ($this->result === FALSE) ? TRUE : FALSE;
if ($fetch_array AND !$this->error)
{
$this->result = mysql_fetch_array($this->result);
$this->error = ($this->result === FALSE) ? TRUE : FALSE;
}
$this->result = ($this->error) ? $this->query."\n".mysql_errno($this->connect).' : '.mysql_error($this->connect) : $this->result;
if ($this->error) die($this->result);
return $this->result;
}
$this->error = TRUE;
$this->result = 'La requète SQL est vide.';
die($this->result);
}
function sql_table($table,$db = '',$like = '')
{
$db = (empty($db)) ? '' : ' FROM `'.$db.'`';
$like = (empty($like)) ? '' : " LIKE '$like'";
$this->query = 'SHOW TABLES'.$db.$like;
$this->result = $this->sql_query($this->query);
$isset_table = FALSE;
while ($result_table = mysql_fetch_array($this->result))
{
if (is_array($table))
{
foreach ($table as $value)
{
$isset_table = ($result_table[0] == $value) ? TRUE : $isset_table;
}
}
else
{
$isset_table = ($result_table[0] == $table) ? TRUE : $isset_table;
}
}
return $isset_table;
}
}
?>
Je suis tomber là dessus sur un autre poste, qui pourrais m'expliquer le principe exact de cette class et surtout quelle avantage possede t'elle par apport un simple fichier connect ?Merci