Migration
This commit is contained in:
282
0.9.0/daemon/system/class.mysql.php
Executable file
282
0.9.0/daemon/system/class.mysql.php
Executable file
@@ -0,0 +1,282 @@
|
||||
<?php
|
||||
|
||||
// +----------------------------------------------------------------------+
|
||||
// | Class de connexion Base de donn?es MySQL |
|
||||
// +----------------------------------------------------------------------+
|
||||
// | 5 Septembre 2004 |
|
||||
// +----------------------------------------------------------------------+
|
||||
// | Ceci est une classe pour la cr?ation d'objet de connexion ? une |
|
||||
// | base de donn?e MySQL, ainsi que des m?thodes pour la gestion |
|
||||
// | et les diff?rentes possibilit?s de s?lection. |
|
||||
// +----------------------------------------------------------------------+
|
||||
// | Auteur: Nottet Thomas |
|
||||
// +----------------------------------------------------------------------+
|
||||
// | Remarque: Tous les arguments des m?thodes sont de types STRING |
|
||||
// +----------------------------------------------------------------------+
|
||||
//
|
||||
|
||||
class Mysql
|
||||
{
|
||||
function Mysql($srv,$db,$usr,$pwd) //Constructeur
|
||||
{
|
||||
/* Ouverture d'une connexion ? un serveur MySQL et
|
||||
selection de la table ? utiliser
|
||||
|
||||
$srv = nom du serveur MySQL
|
||||
$db = Base de donn?es ? utiliser
|
||||
$usr = nom d'utlisateur du serveur MySQL
|
||||
$pwd = mot de passe de cette utilisateur
|
||||
*/
|
||||
|
||||
$this->db=$db;
|
||||
$this->id_connect=@mysql_connect($srv,$usr,$pwd);
|
||||
$dbselect=@mysql_select_db($this->db, $this->id_connect);
|
||||
if(!$dbselect)
|
||||
{
|
||||
$this->Close();
|
||||
$this->id_connect=false;
|
||||
}
|
||||
}
|
||||
|
||||
public function Close()
|
||||
{
|
||||
@mysql_close($this->id_connect);
|
||||
}
|
||||
|
||||
public function Select($champs,$tables,$conditions,$group,$order,$nbrec,$liminf)
|
||||
/* Effectue une requ?te SELECT sur la table choisie
|
||||
|
||||
RETOUR: une matrice (nbre de records X nbre de champs)
|
||||
false en cas d'?chec ou 0 enregistrement
|
||||
|
||||
$champs = une liste des champs s?par?s par ,
|
||||
$tables = une liste des tables s?par?es par , avec alias si n?cessaire
|
||||
$conditions = liste des conditions s?par?s par des op?rateurs logiques
|
||||
$group = champ(s) sur le(s)quel(s) sera effectu? un regroupement
|
||||
$order = champ(s) sur le(s)quel(s) seront tri?s les enregistrements
|
||||
(+ ASC pour croissant et DESC pour d?croissant)
|
||||
$liminf = index du premier enregistrement de l'intervalle ? retourner
|
||||
$nbrec = nombre d'enregistrements ? retourner
|
||||
*/
|
||||
{
|
||||
$this->total_req++;
|
||||
|
||||
$query="SELECT ".$champs." FROM ".$tables;
|
||||
if(!empty($conditions))
|
||||
{
|
||||
$query=$query." WHERE ".$conditions;
|
||||
}
|
||||
if(!empty($group))
|
||||
{
|
||||
$query=$query." GROUP BY ".$group;
|
||||
}
|
||||
if(!empty($order))
|
||||
{
|
||||
$query=$query." ORDER BY ".$order;
|
||||
}
|
||||
if(!empty($nbrec))
|
||||
{
|
||||
if(!empty($liminf))
|
||||
{
|
||||
$query=$query." LIMIT ".$liminf.", ".$nbrec;
|
||||
}
|
||||
else
|
||||
{
|
||||
$query=$query." LIMIT ".$nbrec;
|
||||
}
|
||||
}
|
||||
if($this->id_connect != false)
|
||||
{
|
||||
$res=@mysql_query($query, $this->id_connect);
|
||||
if (empty($res))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$nbRows=@mysql_num_rows($res);
|
||||
if ($nbRows==0)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
for($i=0;$i<$nbRows;$i++)
|
||||
{
|
||||
$enregs[$i]=@mysql_fetch_array($res);
|
||||
}
|
||||
return $enregs;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public function Count($champs,$tables,$conditions) {
|
||||
$this->total_req++;
|
||||
$query = "SELECT COUNT(".$champs.") AS count FROM ".$tables;
|
||||
if(!empty($conditions)) {
|
||||
$query.= " WHERE ".$conditions;
|
||||
}
|
||||
$res = @mysql_query($query, $this->id_connect);
|
||||
|
||||
if($res) {
|
||||
$res2 = mysql_fetch_array($res);
|
||||
return $res2['count'];
|
||||
}
|
||||
else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
public function Insert($champs,$valeurs,$table)
|
||||
/* Effectue une requ?te INSERT sur une table de la
|
||||
base s?lectionn?e
|
||||
|
||||
RETOUR : True en cas de r?ussite
|
||||
False en cas d'?chec
|
||||
|
||||
$champs = une liste des champs s?par?s par ,
|
||||
$valeurs = une liste de valeurs pour les champs correspondant s?par?s par ,
|
||||
$table = la table dans laquelle il faut ins?rer les enregistrements
|
||||
*/
|
||||
{
|
||||
$this->total_req++;
|
||||
|
||||
$query="INSERT INTO ".$table." (".$champs.")
|
||||
VALUES (".$valeurs.")";
|
||||
if($this->id_connect != false)
|
||||
{
|
||||
$res= @mysql_query($query, $this->id_connect);
|
||||
if ($res)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
//return mysql_error();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
//return mysql_error();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public function Delete($table,$conditions)
|
||||
/* Effectue une requ?te DELETE sur une table de la
|
||||
base s?lectionn?e
|
||||
|
||||
RETOUR : Le nombre d'enregistrements supprim?s
|
||||
False en cas d'?chec
|
||||
|
||||
$table = la table dans laquelle il faut ins?rer les enregistrements
|
||||
$conditions = liste des conditions s?par?s par des op?rateurs logiques
|
||||
*/
|
||||
{
|
||||
$this->total_req++;
|
||||
|
||||
$query="DELETE FROM ".$table;
|
||||
if(!empty($conditions))
|
||||
{
|
||||
$query=$query." WHERE ".$conditions;
|
||||
}
|
||||
|
||||
if($this->id_connect != false)
|
||||
{
|
||||
$res=@mysql_query($query, $this->id_connect);
|
||||
if (empty($res))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
return mysql_affected_rows($this->id_connect);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function Update($tables,$champs,$valeurs,$conditions)
|
||||
/* Effectue une requ?te UPDATE sur une table de la
|
||||
base s?lectionn?e
|
||||
|
||||
RETOUR : Le nombre d'enregistrements mis ? jour
|
||||
False en cas d'?chec
|
||||
|
||||
$tables = listes de tables dans lesquelles il faut mettre ? jour les enregistrements
|
||||
$champs = Champs ? mettre ? jour : soit une valeur
|
||||
soit un vecteur si il y a plusieurs champs
|
||||
$valeurs = Valeurs pour mettre ? jour : soit une valeur
|
||||
soit un vecteur si il y a plusieurs champs
|
||||
$conditions = liste des conditions s?par?s par des op?rateurs logiques
|
||||
*/
|
||||
{
|
||||
$this->total_req++;
|
||||
|
||||
$query="UPDATE ".$tables." ";
|
||||
$nbchamps=count($champs);
|
||||
if ($nbchamps!=0)
|
||||
{
|
||||
if ($nbchamps==1)
|
||||
{
|
||||
$query=$query."SET ".$champs."='".$valeurs."' ";
|
||||
}
|
||||
else
|
||||
{
|
||||
$query=$query."SET ".$champs[0]."='".$valeurs[0]."'";
|
||||
for($i=1;$i<$nbchamps;$i++)
|
||||
{
|
||||
$query=$query.", ".$champs[$i]."='".$valeurs[$i]."'";
|
||||
}
|
||||
}
|
||||
}
|
||||
if(!empty($conditions))
|
||||
{
|
||||
$query=$query." WHERE ".$conditions;
|
||||
}
|
||||
if($this->id_connect != false)
|
||||
{
|
||||
$res=@mysql_query($query, $this->id_connect);
|
||||
if (empty($res))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
return @mysql_affected_rows($this->id_connect);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function Query ($query)
|
||||
{
|
||||
if ($this->id_connect != false)
|
||||
{
|
||||
$res=mysql_query($query);
|
||||
if ($res != false)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
private $db;
|
||||
public $id_connect;
|
||||
public $total_req = 0;
|
||||
}
|
||||
|
||||
?>
|
||||
Reference in New Issue
Block a user