require'config.inc.php';
class connexion{
var $serveur;
var $port;
var $utilisateur;
var $mot_de_passe;
var $bd;
var $error;
// **********************************************
//
// Appel au constructeur pour fixer les variables
//
function connexion($serveur,$port,$utilisateur,$mot_de_passe,$bd){
if ($serveur!="")
{
$this->put_serveur($serveur);
if ($port!="") $this->put_port($port);
if ($utilisateur!="") {
$this->put_utilisateur($utilisateur);
if ($mot_de_passe!="") $this->put_passe($mot_de_passe);
$ok = $this->connecter_serveur();
if ($ok==true && $bd!=""){
$this->put_bd($bd);
$this->connecter_bd();
}
}
}
}
//*****************************************************************
// Les 5 fonctions put permettent de fixer les valeurs en tant que
// variable d'instance
//
function put_serveur($serveur){
$this->serveur=$serveur;
}
function put_port($port){
$this->port=$port;
}
function put_utilisateur($utilisateur){
$this->utilisateur=$utilisateur;
}
function put_passe($passe){
$this->mot_de_passe=$passe;
}
function put_bd($bd){
$this->bd=$bd;
}
//******************************************************************************
// Les deux fonction connecter permettent de se connecter à une base ou à une
// table puis de retourner le numéro d'erreur en cas de problème
//
function connecter_serveur(){
if(!($this->descripteur_serveur = mysql_connect($this->serveur.":".$this->port, $this->utilisateur,$this->mot_de_passe)))
{
print("Impossible d'établir la connexion avec le serveur
\n");
return false;
}
return true;
}
function connecter_bd(){
if(!(mysql_select_db($this->bd)))
{
if ($this->debug == true)
{
print("Impossible de se connecter à cette table!
Veuillez vérifier la syntaxe de \$Host dans le fichier configuration.inc.php\n");
print(mysql_errno() . ": ");
print(mysql_error() . "
\n");
}
$this->error = mysql_errno();
return false;
}
return true;
}
//*****************************************************************
// La fonction suivante permet d'envoyer une requête SQL au serveur
//
function SQL($requete){
// echo $requete;
// echo '
';
$resultat = mysql_query($requete);
if (!$resultat) {
//echo mysql_error();
$this->error = mysql_errno();}
return $resultat;
}
//*****************************************************************
// La fonction suivante permet d'ajouter des slashes
//
function tep_db_input($string) {
return addslashes($string);
}
//*****************************************************************
// La fonction suivante permet d'envoyer une requête INSERT ou UPDATE au serveur
//
function ins_upd($table, $data, $action = 'insert', $parameters = '') {
reset($data);
if ($action == 'insert') {
$query = 'insert into ' . $table . ' (';
while (list($columns, ) = each($data)) {
$query .= $columns . ', ';
}
$query = substr($query, 0, -2) . ') values (';
reset($data);
while (list(, $value) = each($data)) {
switch ((string)$value) {
case 'now()':
$query .= 'now(), ';
break;
case 'null':
$query .= 'null, ';
break;
default:
$query .= '\'' . $this->tep_db_input($value) . '\', ';
break;
}
}
$query = substr($query, 0, -2) . ')';
} elseif ($action == 'update') {
$query = 'update ' . $table . ' set ';
while (list($columns, $value) = each($data)) {
switch ((string)$value) {
case 'now()':
$query .= $columns . ' = now(), ';
break;
case 'null':
$query .= $columns .= ' = null, ';
break;
default:
$query .= $columns . ' = \'' . $this->tep_db_input($value) . '\', ';
break;
}
}
$query = substr($query, 0, -2) . ' where ' . $parameters;
}
// echo $query;
return $this->SQL($query);
}
}
?>