Gestire i database con ezSQL

ezSQL è una classe PHP che semplifica parecchio le interazioni degli script PHP con diversi tipi di database, velocizzando così il lavoro di scrittura del codice.
Questa classe, leggermente modificata, viene usata anche da WordPress per gestire tutte le interazioni con il database.
Sul sito dello sviluppatore c’è un’ampia documentazione, con diversi esempi.

Vediamo ora come funziona, con alcuni esempi che effettuano la stessa operazione: il primo viene eseguito con le funzioni classiche di PHP e il secondo tramite ezSQL. Vogliamo visualizzare i dati presenti in una tabella libri e associati al campo titolo.

Metodo classico

< ?php
$server = "localhost";
$db = "esempio";
$utente = "root";
$password = "password";

$connessione = mysql_connect($server,$utente,$password);
if (! $connessione )
die("Non posso connettermi a mySQL");
$database = mysql_select_db($db,$connessione);
or die("Non posso aprire il database $db: ".mysql_error());

$sql = "SELECT titolo FROM libri";
$result = mysql_query($sql,$connessione);
$record = mysql_num_rows($result); 
if ($record>0){
echo "
    "; while($row = mysql_fetch_array($result)){ echo "
  • Titolo:" . $row['titolo'] . "
  • "; } echo "
"; } else { echo "Non ci sono risultati"; } mysql_free_result($result); mysql_close($connessione); ?>

Con ezSQL

< ?php

/* i parametri per accedere al database 
sono specificati nel file ezsql.php */

include_once ("ez_sql.php"); 

$rows = $db->get_results("SELECT titolo FROM libri");
if ($rows){
echo "
    "; foreach ($rows as $row){ echo "
  • Titolo:" . $row->titolo . "
  • "; } echo "
"; } else { echo "Non ci sono risultati"; } ?>

Vediamo ora un altro esempio: inserire dei dati nella tabella libri.

Metodo classico

< ?php
$server = "localhost";
$db = "esempio";
$utente = "root";
$password = "password";

$connessione = mysql_connect($server,$utente,$password);
if (! $connessione )
die("Non posso connettermi a mySQL");
$database = mysql_select_db($db,$connessione);
or die("Non posso aprire il database $db: ".mysql_error());

$sql = "INSERT INTO libri (titolo) VALUES ( 'Iliade' )";
$salva = mysql_query ($sql);

if ($salva){
echo "Dati inseriti correttamente";
} else {
echo "C'è stato un errore durante l'inserimento";
}
mysql_close($link);
?>

Con ezSQL

< ?php
include_once ("ez_sql.php"); 
$sql = "INSERT INTO libri (titolo) VALUES ( 'Iliade' )";
$salva = $db->query ($sql);

if ($salva){
echo "Dati inseriti correttamente";
} else {
echo "C'è stato un errore durante l'inserimento";
}
?>

Come si può notare, la semplice inclusione del file ez_sql.php nei propri script PHP, consente di risparmiare qualche riga di codice e di semplificare i controlli sulle operazioni di inserimento o di recupero dati.
Inoltre, ha il vantaggio di funzionare anche se si sta usando un database diverso da mySQL. Con ezSQL quindi si possono sviluppare applicazioni indipendenti dal tipo di database utilizzato.