[OBIV].it

Artur Mamedov

Video Lezioni in primo piano:

PHP OOP - Scopriamo MySQLi e scriviamogli un intera classe

Pubblicato: 17 September 2012 Mai Modificato

Salve! Ancora un numero per il Video Giornale, e siamo a 7.

Oggi ho scelto di mostrare la nuova libreria per interagire con il RDBMS MySQL dal PHP. E questa libreria è MySQLi. E noi ne vedremo le basi e poi creiamo una classe per lavorarci in stile programmazione orientata agli oggetti.

Ho deciso di fare questo video tutorial sopra tutto perché è da molto che l'uso di 'mysql_'(la vecchia libreria per connettersi e interagire con il database) è scoraggiata ed è consigliato in ogni parte del web la nuova ottimizzata e migliorata libreria MySQL improved 'mysqli_' e anche perché la mia video lezione precedente sull'OOP ha avuto molto successo secondo me.

Li, nel quinto numero del video giornale mostro le basi della programmazione ad oggetti e un esempio in cui creo due classi che si estendono per la connessione al database. Se non siete pratici con la object oriented programming che è un prerequisito per queste video lezioni, passate a vedere almeno la prima mezz'ora del video dove vi presento la OOP (OOP in PHP | Programmazione Orientata agli ogetti con PHP).

Qui, invece parto col presupposto che sapete già la OO e prima di tutto spiego com'è la nuova libreria , quali vantaggi/pregi ha sulla vecchia e poi prendendo un database di esempio mostro come usarla e sopra tutto come usare la sua interfaccia orientata agli oggetti, visto che MySQLi può essere usato completamente in OO. Nella seconda video lezione e nella terza creiamo una classe con i metodi che servono per preparare eseguire la query, per connettere disconnettere dal db, per ripulire i dati passati nell'interrogazione e per estrarre i dati in un oggetto o in un array. E infine nella quarta video lezione vediamo come implementare la classe su un sito.

Basi di mysqli, un intera classe per lavorare in modo più comodo, veloce e personalizzato e l'implementazione su un qualsiasi sito ! (in più pratica con la OOP) in quattro Video Lezioni ! E qui anche tutti i file da scaricare.

Buona visione! Vi aspetto nei commenti!

Programmazione ad oggetti in PHP (basi Mysqli - connect, prepare, execute, fetch)

Immagine che rappresenta il video: Programmazione ad oggetti in PHP (basi Mysqli - connect, prepare, execute, fetch)

Caricata il: 17 September 2012 | Durata Video: 38m37s

Guarda su YouTube il Video: Programmazione ad oggetti in PHP (basi Mysqli - connect, prepare, execute, fetch) Guarda su YouTube

Da tempo stanno scoraggiando l'utilizzo della libreria mysql in php, promuovendo sempre di più la nuova migliorata e ottimizzata libreria mysqli (mysql improved), che offre maggiore flessibilità , da la possibilità di preparare e eseguire le interrogazioni legando parametri, permette connessioni criptate e compresse, offre un interfaccia del tutto Orientata agli Oggetti (OOP) e tantissime altre cose.

In questa video lezione vediamo le migliorie principali e l'uso della libreria in stile orientato ad oggetti per connettersi/disconnettersi , preparare query , eseguire query e formattare i dati in un array o oggetto.

Programmazione ad oggetti in PHP (classe per lavorare con Mysqli)

Immagine che rappresenta il video: Programmazione ad oggetti in PHP (classe per lavorare con Mysqli)

Caricata il: 17 September 2012 | Durata Video: 19m42s

Guarda su YouTube il Video: Programmazione ad oggetti in PHP (classe per lavorare con Mysqli)Guarda su YouTube

Ora che sappiamo come utilizzare la nuova libreria, ora che siamo convinti che MySQLi è la scelta migliore per il nostro sito creiamo una classe per lavorarci.

In questo modo potremo accedere alle funzioni della libreria con il nome che vogliamo, possiamo aggregare il funzionale e personalizzarlo. Ad esempio se la connessione non avviene abbiamo bisogno di un messaggio di errore, nella classe possiamo scrivere direttamente nel metodo della connessione un nostro messaggio e averlo ovunque utilizziamo la classe, se lo vogliamo cambiare basta cambiarlo nella classe.

Programmazione ad oggetti in PHP (classe Mysqli - prepare, query, fetch, escape)

Immagine che rappresenta il video: Programmazione ad oggetti in PHP (classe Mysqli - prepare, query, fetch, escape)

Caricata il: 17 September 2012 | Durata Video: 13m50s

Guarda su YouTube il Video: Programmazione ad oggetti in PHP (classe Mysqli - prepare, query, fetch, escape)Guarda su YouTube

Finiamo la classe per lavorare con mysqli scrivendo gli ultimi metodi rimasti , quello per la preparazione della query (che memorizza la query passata per l'interrogazione), quello che esegue la query o restituisce "errore" (che utilizza la funzione di libreria “mysqli->query();”e memorizza i dati in $result), un metodo fetch che convertirà i dati estratti dal db in un oggetto o in un array (qui abbiamo sempre una funzione di libreria “result->fetch_array()” o “result->fetch_object()”) e per ultimo il metodo che darà un tocco di sicurezza alle nostre query ripulendole da simboli speciali che possono corrompere l'interrogazione (il famoso “mysqli->real_escape_string()” che bisognerà chiamare sulle query prima di utilizzarle).

Programmazione ad oggetti in PHP (classe Mysqli - implementazione su un sito)

Immagine che rappresenta il video: Programmazione ad oggetti in PHP (classe Mysqli - implementazione su un sito)

Caricata il: 17 September 2012 | Durata Video: 18m50s

Guarda su YouTube il Video: Programmazione ad oggetti in PHP (classe Mysqli - implementazione su un sito) Guarda su YouTube

Adesso possiamo prendere il file con la nostra classe copiare il file sul sito in cui lo vogliamo utilizzare, includerlo nelle pagine dove vogliamo utilizzarlo e utilizzare i metodi personalizzati delle nostre classi.

Tutto in 4 semplici passi: 1. $db = new Mysqlimproved; (abbiamo creato l'oggetto della classse), 2. $db->prepare("SELECT * FROM `tabella_db` WHERE page_name={$page_name}"); (nel mio caso la query è cosi, e qui la prepariamo), 3. $db->query(); (eseguiamo l'interrogazione), 4. $db->fetch('array') (e in fine estraiamo i dati in un array o in un oggetto in quest altro modo “$db->fetch() o $db->fetch('object')”).

E al resto ci pensa la classse scritta , manca ovviamente l'errore nel caso “fetch” non restituisce niente e il codice che recupera e ripulisce “$page_name”.

comments powered by Disqus
Log In

Connettiti con Facebook

Registrati

Ultimi Commenti