Claudiogarau.it :: Tutorials & Scripts, PHP, Linux and more.

Home ~ Php :: Una classe PHP per gestire le query con PDO :: Indice Php

Una classe PHP per gestire le query con PDO

Categoria: Php Inserito il: 03-02-2013 Stampa (13187 click)

Dato che a partire dalla versione 5.5 di PHP le MySQL functions saranno considerate deprecate per poi essere definitivamente rimosse con le release successive, se non lo si è fatto fino ad oggi sarà bene cominciare ad impratichirsi con le alternative disponibili come per esempio MySQLi e PDO; riguardo a quest'ultima potrebbe essere utile una classe in grado di utilizzare Prepared Statements e di eseguire i comandi previsti dalle query SQL

Nel caso specifico il sorgente proposto di seguito sarà quello di una semplice sottoclasse il cui compito è quello di estendere PDO ereditandone i metodi:

class Sub_PDO extends PDO {
  public function eseguiSQL($istruzione, $valori) {
    $esecuzione = $this->prepare($istruzione);
    if( isset($esecuzione) && $esecuzione->execute($valori) ) {
      $risultato = $esecuzione->rowCount();
      while( $esecuzione->fetch(PDO::FETCH_ASSOC) ) {
      }
    }
    return $risultato;
  }
};

Abbiamo quindi un metodo con visibilità public che procede innanzitutto con il Prepared Statement per poi provvedere all'esecuzione dell'istruzione sulla base dei compi coinvolti; nell'esempio seguente la classe verrà utilizzata nel completamento di un query per l'inserimento di valori in tabella

$obj = new Sub_PDO("mysql:host=localhost;dbname=rubrica",'root','');
define("INSERIMENTO", "INSERT INTO nominativi (nome,cognome) VALUES(?,?)");
$parametri = array("Mario", "Rossi");
$obj->eseguiSQL(INSERIMENTO, $parametri);

Naturalmente "INSERIMENTO" è soltanto un nome associato arbitrariamente alla costante che memorizza l'istruzione da eseguire, l'utilizzatore potrà scegliere una qualsiasi altra denominazione purché questa venga passata come primo argomento al metodo della sottoclasse.

Cerca nel sito
Per sito
Sviluppatore di applicazioni Web con competenze evolute nella progettazione delle basi di dati, autore per alcune delle pił importanti testate on line dedicate alla manualistica tecnica (HTML.it, MrWebmaster.it, Edit) e consulente per l'e-learning.
Tutte le categorie
Tutorial Random
I filtri di Apache
Apache ha la possibilità di filtrare le richieste provenienti dai client e di soddisfare soltanto quelle trasmesse da utenti eventualmente... Leggi l'articolo
Corsi online per sviluppatori
Corsi per Webmaster, Web Designer, Programmatori, Grafici e Sistemisti