par hika - 2005-01-30 21:20:52
crée le 2004-05-30 18:15:26

mysql.php


<?php
/*
  MySQL - Class connect.
  Copyright (c) 2002,2003 Gilbert Cao (hika)
  All rights reserved.

  This program is free software; you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation; either version 2 of the License, or
  (at your option) any later version.

  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.

  You should have received a copy of the GNU General Public License
  along with this program; if not, write to the Free Software
  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
*/

/*************************************
Classe de connexion à la base MySQL
*************************************/
Class Connect {

  private $host;
  private $user;
  private $pwd;
  private $db;
  private $id;

  function __construct($host, $user, $pwd, $db) {
  /*****************
   Constructeur (PHP 8)
  *****************/
    $this->Connect($host, $user, $pwd, $db);
  }

  function Connect($host, $user, $pwd, $db) {
  /*****************
   Constructeur
  *****************/

    $this->host = $host;
    $this->user = $user;
    $this->pwd = $pwd;
    $this->db = $db;

    $this->id = mysql_connect($this->host, $this->user, $this->pwd);
    if ($this->id) {
      return mysql_select_db($this->db, $this->id);
    }
    return false;
  }

  function QueryDB($query) {
  /******************************************************
  Spécif : Effectue la requête et retourne un resultset
  Param  : $query, la requête SQL
  *******************************************************/
    $result = mysql_query($query, $this->id);
    if ($result)
      return $result;
    return false;
  }

  function CountDB($query) {
  /******************************************************
  Spécif : Récupère le nombre de lignes d'une requête
  Param  : $query, la requête
  ******************************************************/
    $result = $this->QueryDB($query);
    if ($result)
      return mysql_num_rows($result);
    else
      return false;
  }
  
  function CountRowsDB($result) {
  /******************************************************
  Spécif : Récupère le nombre de lignes d'un resultset
  Param  : $result, le resultset
  ******************************************************/
    if ($result)
      return mysql_num_rows($result);
    else
      return false;
  }

  function CountFieldsDB($result) {
  /******************************************************
  Spécif : Récupère le nombre de colonnes d'un resultset
  Param  : $result, le resultset
  ******************************************************/
    if ($result)
      return mysql_num_fields($result);
    else
      return false;
  }

  function LastIndexDB($column, $table, $predicat="") {
    $SQL = "SELECT max(".$column.")
      FROM ".$table."
      ".$predicat.";";
    $result = mysql_query($SQL, $this->id);

    return mysql_result($result, 0, "max(".$column.")");
  }

  function SeekDB($result, $num_ligne) {
  /*****************************************************
  Spécif : Positionne le resultset à la ligne indiquée
  Param  : $result, le resultset
  *****************************************************/
    if ($this->CountRowsDB($result) <= $num_ligne)
      return false;
    return mysql_data_seek($result, $num_ligne);
  }

  function CursorDB($result) {
  /*******************************************
  Spécif : Récupère une ligne d'un resultset
           et retourne la ligne dans un vecteur
  Param  : $result, le resultset
  *******************************************/
    if ($result) {
      $cur = mysql_fetch_array($result);
      if ($cur)
        return $cur;
      return false;
    }
    else
      return false;
  }
  
  function FreeDB($result) {
  /*******************************************
  Spécif : Libère la mémoire
  Param  : $result, le resultset
  *******************************************/
    if ($result) {
      return mysql_free_result($result);
    }
    else
      return false;
  }
  
  function FieldsDB($result) {
  /*******************************************
  Spécif : Récupère un nom de colonne d'un resultset
           et retourne les infos de colonne dans un objet
  Param  : $result, le resultset
  *******************************************/
    if ($result) {
      $cur = mysql_fetch_field($result);
      if ($cur)
        return $cur;
      return false;
    }
    else
      return false;
  }

  function Disconnect() {
  /*********************
  Déconnexion
  "Destructeur"
  *********************/
    @mysql_close($this->id);
  }

}
/* Connect */
/************************************/
?>

par hika - 2005-01-30 21:20:52
crée le 2004-05-30 18:15:26

FreeBSD Mall Smarty Template Engine Page générée le Samedi 26 Avril 2025 14:21:34 Powered by FreeBSD
POWERED BY FreeBSD, Apache, PHP, PostgreSQL, Code & design by Hika
BSD Daemon Copyright 1988 by Marshall Kirk McKusick. All Rights Reserved.