database

Zend Framework Tutorial - 3

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.

Zend Framework Tutorial - 2

Struttura del progetto Nel precedente articolo abbiamo cominciato a vedere quali sono gli elementi che costituiscono la nostra applicazione web realizzata con lo Zend Framework. Abbiamo detto che sono necessarie delle classi di tipo Controller per ciascun gruppo di funzionalità correlate, un Controller per gestire la home page (IndexController) ed un altro per la pagina di errore (ErrorController). Abbiamo detto poi che avremmo utilizzato diversi file per conservare i template HTML e uno o più classi Model per effettuare l’accesso ai dati.

Zend Framework Tutorial - 1

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.

Presentazione dello Zend Framework

Introduzione Se avete maturato un po' di esperienza in PHP sapete bene come gran parte del codice di un nuovo lavoro può essere ereditato dai precedenti progetti: le funzioni per collegarsi al database, quelle per gestire i template, quelle per l’autenticazione dell’utente, ecc.. Accanto al codice da voi prodotto, forse usate anche diverse librerie di codice realizzate da terzi: Smarty per gestire i template HTML, FPDF per creare PDF, PHPMailer per inviare email complesse, ADODb per interagire con i diversi database, la miriade di classi PEAR, ecc.

Installare Apache 2.2, PHP 5.2 e MySQL 5 su Windows

Introduzione In questo tutorial mostreremo in dettaglio le procedure di installazione e configurazione di Apache 2.2, PHP 5.2 e MySQL 5 su Windows 2000/XP. Il nostro scopo principale è quello di ottenere una piattaforma di sviluppo per poter realizzare e testare le nostre applicazioni PHP-MySQL. Abbiamo preso in considerazione le versioni più recenti dei vari software così da poterne sperimentare le caratteristiche e novità, alcune delle quali saranno evidenti già in fase di installazione.

Combattere lo spam con tecniche CAPTCHA

Dopo mille peripezie e notti insonni siamo riusciti a realizzare un guestbook o un sistema di commenti per il nostro sito web. Finalmente gli utenti hanno la possibilità di interagire con il sito, lasciare la loro “impronta”, sentirsi più coinvolti. Neanche il tempo di godersi la nuova creazione che subito un altro problema sembra vanificare tutti i nostri sforzi: lo spam!!! E' vero, ogni tanto qualche buontempone si diverte ad “abusare” delle funzionalità offerte dai nostri script ma avevamo pensato anche a questo e dal nostro pannello di amministrazione facciamo pulizia degli interventi indesiderati.

Istruzioni "casuali"

Supponiamo di voler cancellare periodicamente i file contenuti in una cartella del server, o eseguire saltuariamente determinate query. Una soluzione comunemente adottata è quella di affidare a cron (o programmi analoghi) l’esecuzione di particolari script ad intervalli regolari di tempo. Non sempre però si ha a disposizione cron e a volte non è neanche necessaria una programmazione rigorosa degli istanti di esecuzione. Si pensi ad una routine “spazzina”, realizzata per eliminare vecchi record nel database.

L'estensione mysqli - III

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.

L'estensione mysqli - II

In questa seconda parte riprenderemo alcune tecniche già esposte per approfondire diversi aspetti, in particolare vedremo come inviare a MySQL alcune opzioni per la connessione, analizzeremo inoltre la differenza tra query buffered ed unbuffered e vedremo come inviare query multiple. Infine elencheremo altre funzioni di uso comune. Con il primo articolo della serie dedicata all’estensione ext/mysqli abbiamo iniziato ad esplorare il nuovo set di funzioni ed oggetti messi a disposizione per l’interazione con MySQL 4.

PHP 5.1 - Note sull'aggiornamento

L’uscita di PHP 5.1 segna una piccola svolta nel percorso di PHP, non solo per le nuove funzionalità introdotte ma anche per alcune variazioni del comportamento del PHP Engine, il cuore di PHP, e per la riorganizzazione di diverse estensioni. Per aiutare lo sviluppatore ad orientarsi nei cambiamenti introdotti e rendere il passaggio alla nuova release meno traumatico, sul sito ufficiale di PHP è stata pubblicata una guida all’aggiornamento di cui riporto la traduzione.