Oggi presento una nuova classe php creata da me che permette di gestire facilmente il proprio database MySQL da php, includendo features che rendono comoda la vita del programmatore PHP-MySQL!
Veniamo ora alla spiegazione dettagliata delle Funzioni che differenziano ManageSQL dalle comuni classi.
In Anzitutto indico il link dove poter scaricare la classe: ManageSQL
Nel file esempio trovare un codice di esempio che spiega come usare la classe a grandi linee.
Le funzioni innovative di questa classe (che subirà aggiornamenti man mano che mi verranno idee su nuove funzioni da aggiungere) sono:
- Invio eMail all’Amministratore in caso di errore su una Query.
- AutoEscape della query (disabilitabile).
- Possibilità di usare una connessione al db gia stabilita.
- Possibilità di stampare un errore personale per ogni query.
- Possibilità di ottenere tutti i dati ottenuti da una query, in un Array Multidimensionale.
Ora veniamo alle istruzioni per utilizzare la classe e la spiegazione delle funzioni da utilizzare:
// iniziamo includendo la classe
require_once(“libs/manageSQL.class.php”);
// valorizza la variabile con la classe
$db = new manageSQL;
Ora personalizziamo le impostazioni:
// abilita l’autoEscape delle query in questo modo potremo passare direttamente i dati
$db->autoEscape = true;
// abilita l’invio di errori in query via mail (parametri: indirizzo al quale inviare la mail, e 1 = abilitato, 0 = disabilitato)
$db->sendMailError(“info@svsoftwares.org”, 1);
Ora possiamo scegliere se utilizzare una connessione gia fatta al db passandola come parametro alla funzione $db->usaRisorsa oppure creare una nuova risorsa di connessione con la funzione: $db->connettiDb che vorrà come parametri: host, user, password, e nome del db.
Per effettuare una Query basterà usare la funzione: $db->doQuery che accetta 2 parametri: Il primo obbligatorio è la query da eseguire, mentre il secondo facoltativo è il messaggio di errore personalizzato per quella query.
Se la Query sarà una INSERT e vogliamo ottenere l’ID inserito nel campo con auto_increment, basterà utilizzare la funzione: $db->lastID() che restituisce un valore numerico intero.
Nel caso la query sarà di selezione (SELECT) bisognerà memorizzare la risorsa ottenuta dalla funzione doQuery, in una variabile: $ri = $db->doQuery…
Per contare le righe ottenute dalla SELECT possiamo usare la funzione: $db->contaRighe($ri) che restituisce un valore numerico.
Per ottenere i dati dalla SELECT, sono previsti 2 modi:
- Il primo è il classico ciclo while da utilizzare con la funzione: $db->getData($risorsaQuery) ad esempio:
while($riga = $db->getData($ri))
{
echo $riga->campo;
}
- Il secondo metodo è quello di ottenere tutti i dati in un array multidimensionale con la funzione: $array_val = $db->getArray($ri, true) che accetta 2 parametri: il primo è la risorsa della query SELECT, mentre il secondo è un valore booleano per decidere se l’array sarà associativo (true) o numerico (false).
Infine abbiamo le funzioni: $db->free($ri) che libera la memoria della query passata come paramentro, e la funzione: $db->chiudi() che chiude la connessione gestita dalla classe.
Spero che la classe sia di vostro gradimento, e mi farebbe piacere una ricevere una mail per ogni persona che la usa… perchè? perchè mi soddisfa vedere che il mio lavoro è apprezzato dalla gente e che qualcuno si interessa al mio blog!
Popolarità: 1%
Articoli correlati:


[...] Original post by StefanoV [...]
[...] Original post by StefanoV [...]
[...] che vi presento oggi, è una versione migliorata della mia classe “ManageDB“, con più funzioni e una migliore organizzazione dei [...]