disign | PHP: classe di connessione DB | a digital sign for a best design!
A digital sign for a best design

Articolo stampato da http://disign.improntedigitali.it/php-classe-di-connessione-db-449-2-1.html

© Luca Frassineti

Programmazione 3.598 visualizzazioni

PHP: classe di connessione DB

20/11/2012

In questo articolo riporto un esempio di costruzione di una classe che gestisce la connessione al Db e un set di interrogazioni standard.

Il codice è commentato in modo da fornire una minima spiegazione di ogni singolo elemento che la compone.

Ovviamente altre eventuali funzioni ritenute necessarie possono esser aggiunte e inserite!

La classe andrà salvata in un file a se stante e dovrà essere richiamata con il passaggio dei dati di connessione per ogni funzione evocata.

 

Class DbConnect { // inzio classe
                  var $host = '';
                  var $user = '';
                  var $password = '';
                  var $database = '';
                  var $persistent = false;
                  var $conn = NULL;
                  var $result= false;
                  var $error_reporting = false;
                  
// la funzione che opererà alla chiamata della classe
                  function DbConnect ($host, $user, $password, $database, $error_reporting=true, $persistent=false) {
                       $this->host = $host;
                       $this->user = $user;
                       $this->password = $password;
                       $this->database = $database;
                       $this->persistent = $persistent;
                       $this->error_reporting = $error_reporting;
                  }
   
                    function open() { // apertura open
                  if ($this->persistent) {
                     $func = 'mysql_pconnect';
                  } else {
                     $func = 'mysql_connect'; 
                  }            
                  
                  // connessione al server mysql
                  $this->conn = $func($this->host, $this->user, $this->password); 
                  if (!$this->conn) {
                       return false;          
                  }
                  
                  // selezione del DB
                  if (@!mysql_select_db($this->database, $this->conn)) {
                     return false;
                  }
                     return true;
                  }
   
                   // chiusura DB
                   function close() {
                   return (@mysql_close($this->conn));
                   }
   
                   // se error_reporting attivato riporto errore
                     function error() {
                   if ($this->error_reporting) {
                   return (mysql_error()) ;
                        }
                   } // chiusura open
     
    // gruppo funzioni interrogazione 
    function query($sql) {
        $this->result = @mysql_query($sql, $this->conn);
        return($this->result != false);
    }
      
    function affectedrows() {
        return(@mysql_affected_rows($this->conn));
    }
    
    function numrows() {
        return(@mysql_num_rows($this->result));
    }
   
    function fetchobject() {
         return(@mysql_fetch_object($this->result, MYSQL_ASSOC));
    }
     
     function fetcharray() {
          return(mysql_fetch_array($this->result));
     }
     
     function fetchassoc() {
         return(@mysql_fetch_assoc($this->result));
     }
     
     function freeresult() {
          return(@mysql_free_result($this->result));
     }
        
   } // fine classe
  

Invia una domanda o un commento sull'articolo

I campi obbligatori sono segnalati *

*

*



 


Questo sito è totalmente privo di pubblicità, se volete sostenere questa inziativa, potete scegliere di fare una piccola donazione libera:


© 2009 - 2024 Impronte digitali di Luca Frassineti. Tutti i diritti riservati.