Realizzare uno script PHP per effettuare il login degli utenti è un compito piuttosto semplice per un programmatore PHP con un po' di esperienza. Gli sviluppatori alle prime armi possono invece incontrare qualche difficoltà.
Lo script che viene proposto di seguito vuole essere quindi un punto di partenza per i neofiti che li guidi alla realizzazione del proprio sistema di login con PHP. La complessità è stata ridotta al minimo per rendere lo script maggiormente comprensibile, ma non per questo a rischio sicurezza.
Capita spesso di dover realizzare una ricerca all’interno del database secondo dei criteri che variano in base alle condizioni impostate dall’utente. Supponiamo ad esempio di dover realizzare un motore di ricerca dei comuni italiani. L’utente potra' specificare il nome del comune o parte di esso, inoltre potra' selezionare la regione o la provincia di appartenenza per restringere il campo di ricerca.
Poiché non vi è alcun obbligo di specificare tutti i criteri di ricerca, è necessario trovare un sistema per poter realizzare una query SQL che consideri solo le condizioni specificate dall’utente ed ignori gli altri criteri.
Introduzione In una applicazione web capita spesso di dover mostrare all’utente un elenco di dati provenienti dal database. A volte questi dati sono numerosi pertanto, per ragioni estetiche e di usabilità, è necessario suddividerli in diverse pagine web. L’accesso alle singole pagine avviene tramite dei link posti comunemente al disopra e al disotto dell’elenco parziale di dati. Questa tecnica di rappresentazione dei dati viene comunemente detta paginazione e gli esempi sul web sono numerosi, si pensi ad esempio ai risultati di un motore di ricerca o all’elenco dei messaggi di un forum o di un blog.
Model Poiché tutte le funzionalità del sito che stiamo realizzando fanno accesso ai dati presenti nel database, prima di realizzare i Controller del nostro progetto analizziamo il funzionamento del Model, ovvero della classe responsabile di tutte le operazioni eseguite direttamente sulla base di dati. Per realizzare il Model adotteremo il classico approccio di una applicazione PHP/MySQL basato sull’esecuzione esplicita di query attraverso lo Zend_Db_Adapter.
Il Model per la gestione delle news sarà quindi una classe con un metodo per ciascuna funzionalità fondamentale sui dati della news: getAllNews per lettura di tutte le news (per la home-page), getNewsById per lettura di una singola news (impiegata nelle pagine di visualizzazione e modifica di una singola news), insertUpdateNews per l’inserimento e la modifica e deleteNews per la cancellazione.
Introduzione Lo Zend Framework è una completa collezione di classi da impiegare nella realizzazione di applicazioni PHP di media e grande complessità. Ci sono classi per tutte le esigenze quindi è inutile provare a farne un elenco dettagliato e descriverne il funzionamento. Il modo migliore per scoprire lo Zend Framework è invece realizzare con esso una piccola applicazione e quindi in questo tutorial vedremo come costruire un sito web in grado di mostrare delle news, gestite dinamicamente dall’utente, e conservate in un database MySQL.
Concludiamo lo studio della nuova estensione ext/mysqli soffermandoci su altre interessanti novità. Inizieremo dai prepared statement con cui effettuare il binding dei parametri e dei risultati, vedremo poi come eseguire una transazione ed infine analizzeremo le novità introdotte nella gestione dei BLOB.
I prepared statement ovvero le “dichiarazioni preparate” sono dei modelli di query da inviare e conservare nel server MySQL. Attraverso un sistema di collegamento tra le variabili PHP e i parametri delle query preparate è possibile sia modificare i dati contenuti nella query, sia recuperare direttamente i set di risultati.
Quando si realizza un’applicazione per Internet, qualsiasi sia il linguaggio server-side che si andrà ad utilizzare, è estremamente importante affrontare con attenzione e consapevolezza quella che è la più significativa differenza tra la programmazione web e lo sviluppo di un normale software per computer desktop, ovvero la gestione dello stato.
Un comune programma per computer deve interagire direttamente con un unico utente e può contare su un quantitativo di memoria generalmente abbondante e soprattutto sempre disponibile durante tutta la sua esecuzione.
Dopo anni di onorato servizio l’estensione ext/mysql esce di scena lasciando il compito di permettere l’interazione tra PHP e MySQL alla nuova estensione ext/mysqli.
Georg Richter, il responsabile dello sviluppo di questa libreria, ha affermato in una intervista che il codice di ext/mysql, a causa delle continue modifiche ed aggiornamenti subiti nel corso degli anni, era diventato praticamente illeggibile e ciò ha reso la sua manutenzione sempre più difficile.
E' stato necessario riscrivere questa estensione anche a causa delle numerose caratteristiche del nuovo MySQL 4.
phpMyAdmin è il più potente strumento per l’amministrazione di database MySQL scritto in PHP. Con phpMyAdmin si ha a disposizione una applicazione web in grado di soddisfare le più disparate esigenze di gestione e manipolazione del DBMS Open Source più popolare. Potremo creare database e tabelle, gestirne il contenuto, amministrare gli utenti, effettuare e ripristinare backup, lanciare singole query o interi file SQL, esportare i dati in vari formati ed effettuare tante altre operazioni avanzate.
Niente panico! Nonostante il numero e la valenza delle novità introdotte con PHP 5 sia impressionante, questa nuova versione non stravolge il modo di lavorare con PHP. Tutto ciò che avete imparato a fare con PHP 4 rimane valido, salvo qualche piccola eccezione, anche per PHP 5.
Perché allora si sente parlare di compatibilità degli script con PHP 5? Uno dei principali motivi per cui alcune applicazioni hanno problemi a girare con la nuova versione di PHP sta nella rinnovata gestione degli oggetti e nel modo in cui vengono passati come parametri alle funzioni.