| La guida piu' esauriente sulla programmazione in PHP e MySQL
PHP e MySQL formano una squadra formidabile, e se si possiede una certa dimestichezza con l’HTML, questo manuale consentira' di creare siti Web database-backed/PHP-driven in pochissimo tempo. Insieme alle nuove caratteristiche di PHP5, si imparera' a installare, amministrare e utilizzare MySQL 4.0 nella progettazione dei database. In questo libro si trovera' tutto cio' che serve per trarre il maggior vantaggio da tutto cio' che questa dinamica coppia ha da offrire, a partire dai fondamenti di PHP, fino alla connessione di pagine Web HTML a MySQL, PostgreSQL e Oracle.
Tra gli argomenti:
- Risolvere problemi comuni con una serie di modelli sintomo/diagnosi/soluzione.
- Scoprire come utilizzare PHP insieme a Oracle e PostgreSQL cosi' come MySQL.
- Integrare PHP con Java, JavaScript e XML.
- Utilizzare PHP per includere parti di codice all'interno di normali pagine HTML.
- Scoprire come il nuovo parser di PHP5 supporta la gestione delle eccezioni e un modello a oggetti piu' completo.
- Comprendere Zend Engine 2 e il nuovo modello a oggetti, con il supporto per gli elementi privati/protetti, le classi astratte e le interfacce.
- Installare MySQL e imparare ad amministrarlo con successo, compreso backup, copia e ripristino.
- Scrivere applicazioni PHP supportate da MySQL.
- Apprendere dallo studio di casi come progettare e implementare un Weblog, un sistema di identificazione utente ed altre applicazioni.
Introduzione
Benvenuti nella guida completa a PHP5 e MySQL!
Gli autori di questo libro, sebbene ammettano di essere di parte, ritengono
che il linguaggio di scripting Web PHP possa essere considerato il vincitore
senza troppi sforzi fra tutti i prodotti della sua nicchia, di gran lunga il piu'
semplice e il piu' flessibile fra gli strumenti lato server per creare e far girare
velocemente ottimi siti Web. Anche se milioni di programmatori Web sparsi
in tutto il mondo potrebbero sbagliarsi, in questo caso particolare, non e' cosi.
MySQL e' la piattaforma per i database open source piu' conosciuta e rappresenta
la prima scelta per molti per creare siti Web database-backed/PHP-driven.
Cos’e' PHP?
PHP e' un linguaggio di scripting Web open source, lato server e incorporato in
HTML compatibile con tutti i maggiori server Web (in particolare con Apache).
PHP permette di includere parti di codice nelle normali pagine HTML – codice
che viene interpretato quando le pagine Web vengono passate all’utente dal
server. PHP inoltre svolge anche la funzione di linguaggio “collante”, rendendo
piu' semplice la connessione delle pagine Web ai database server-side.
Perche' PHP?
Quasi tutto il Capitolo 1 sara' dedicato a questa domanda. La risposta piu' breve
e' che PHP e' libero, open source, completo, adatto a tutte le piattaforme,
stabile, veloce, progettato in modo chiaro, facile da imparare e lavora bene
insieme agli altri sistemi.
Cosa c’e' di nuovo in questa edizione?
L’intento iniziale degli autori per la stesura di questo libro era di riorganizzare
semplicemente l’edizione precedente e aggiornarla alla versione 5 di PHP.
Tuttavia, si sono resi conto che sebbene le edizioni precedenti si fossero occupate
anche dell’interazione tra PHP e MySQL, i lettori erano stati lasciati
completamente all’oscuro sul modo in cui si potevano creare e amministrare
i database MySQL, e questo li aveva portati a fare molte domande. Di conseguenza,
gli autori hanno deciso di rafforzare la parte dedicata a MySQL e di
cambiare il titolo del libro.
Nuovi aspetti di PHP5
Sebbene la maggior parte delle funzionalita' di PHP4 rimangano immutate
in PHP5, ci sono stati alcuni profondi cambiamenti.
Fra le novita' trattate in questo libro, si possono citare:
- Zend Engine 2 e il nuovo modello a oggetti, con il supporto per gli elementi
privati/protetti, le classi astratte e le interfacce;
- il supporto XML di PHP completamente rimaneggiato, costruito attorno
a libmxl2;
- le eccezioni e la loro gestione.
La trattazione di MySQL
In questo volume sara' trattata l’installazione di MySQL 4.0, la progettazione
del database e la sua amministrazione, compresi backup, copia e ripristino.
Come nelle edizioni precedenti, gran parte del libro sara' dedicata alle tecniche
di scrittura di applicazioni PHP supportate da MySQL.
Altro materiale nuovo
Oltre alle caratteristiche specifiche di MySQL e PHP5, sono state aggiunte:
- copertura migliorata dei database oltre a MySQL (livello di interazione
tra i database Oracle, PostgreSQL e PEAR);
- il deposito del codice PEAR;
- un capitolo sull’integrazione fra PHP e Java;
- capitoli separati sulla gestione degli errori e le tecniche di debugging.
Infine, l’intero volume e' stato riorganizzato, spostando gli argomenti piu'
avanzati alla fine del libro, per fornire ai principianti una rampa di lancio
piu' semplice.
Chi ha scritto il libro?
Le prime due versioni del libro sono state scritte da Converse e Park, con un
capitolo “ospite” scritto da Dustin Mitchell e technical editing di Richard
Lynch. Per questa versione, Clark Morgan si e' assunto la maggior parte del
lavoro di revisione, con l’aiuto di Converse e Park cosi come di David Wall
e Chris Cornell, che ha contribuito anche ai capitoli e si e' occupato del technical
editing.
A chi e' rivolto questo libro
Questo libro e' rivolto a tutti coloro che vogliono realizzare un sito Web che
abbia modalita' di funzionamento piu' complesse rispetto a quelle possibili con
una pagina HTML statica. All’interno di questo pubblico, sono stati presi in
considerazione i tre seguenti tipi di persone:
- progettisti di siti Web che conoscono HTML e che vogliono passare alla
creazione di siti Web dinamici;
- programmatori esperti (C, Java, Perl e cosi via), senza esperienza Web,
che vogliono addentrarsi velocemente nella programmazione Web lato
server;
- programmatori che hanno utilizzato altre tecnologie lato server (per esempio
Active Server Pages, Java Server Page, Cold Fusion) e che vogliono migliorarsi
o semplicemente aggiungere un altro strumento al loro bagaglio.
Si da' per scontato che il lettore abbia familiarita' con HTML e abbia le
conoscenze fondamentali per lavorare in un ambiente Web, ma oltre a questo
non si presuppone alcuna esperienza di programmazione. Per aiutare i programmatori
piu' esperti a risparmiare tempo, sono state incluse diverse note e
parti a se' stanti che confrontano PHP con gli altri linguaggi indicando quali
capitoli o sezioni possono essere trascurati con tranquillita'. Infine si consiglia
di consultare le appendici, che offrono consigli specifici per programmatori
C, ASP e per i progettisti di HTML puro.
Questo volume non e' un manuale
Il gruppo per la documentazione di PHP ha realizzato un grande manuale in linea
all’indirizzo www.php.net, fatto (ovviamente) con PHP. Questo volume non e'
quel manuale o un suo sostituto. Lo si puo' vedere come complemento del manuale
e probabilmente si passera' da uno all’altro per ulteriori approfondimenti.
In generale si trovera' che il manuale in linea e' ben comprensibile, copre
tutti gli aspetti e le funzioni del linguaggio ma, inevitabilmente, non ha un
grande approfondimento dei singoli argomenti. Per contro, in questo libro,
sono stati sviluppati gli aspetti piu' utilizzati o di difficile comprensione, e si
sono forniti una base, spiegazioni ed esempi esaurienti.
Come e' organizzato il libro
Questo volume e' suddiviso in sei parti, come mostrato dalla sezione seguente.
Parte I: PHP: i fondamenti
Questa parte e' stata pensata con l’intento di introdurre velocemente il lettore
agli aspetti essenziali di PHP, rimandando alle Parti finali gli aspetti piu'
complessi.
- I Capitoli da 1 a 4 fanno da introduzione a PHP e illustrano quanto e' necessario
sapere per cominciare;
- i Capitoli da 5 a 10 sono una guida ai piu' importanti aspetti di PHP (a
eccezione dell’interazione con i database): la sintassi, i tipi di dati e le
funzioni incorporate basilari;
- il Capitolo 11 e' una guida alle insidie piu' comuni nella programmazione
PHP.
Parte II: PHP e MySQL
La seconda parte del libro e' dedicata sia a MySQL sia all’interazione fra PHP
e MySQL.
- I Capitoli 12 e 13 danno un orientamento generale sulla programmazione
Web con un database SQL, oltre a consigli su come scegliere il sistema di
database adatto;
- il Capitolo 14 copre l’installazione e l’amministrazione dei database My-
SQL, e il Capitolo 15 e' dedicato alle funzioni di PHP per MySQL;
- i Capitoli 16 e 17 contengono studi di casi di interazione fra PHP e MySQL
dettagliati e ricchi di codice;
- i Capitoli 18 e 19 offrono consigli e problematiche specifiche del lavoro
con PHP e MySQL.
Parte III: Funzioni e tecniche avanzate
In questa parte sono trattati gli aspetti piu' avanzati e difficili di PHP, in
generale ciascun capitolo e' indipendente, e contiene argomenti quali la programmazione
orientata agli oggetti, la gestione delle sessioni, la gestione
delle eccezioni, l’utilizzo dei cookie e le espressioni regolari. Il Capitolo 32
passa in rassegna le tecniche di debugging e il Capitolo 33 esamina lo stile
di programmazione.
Parte IV: Connessioni
In questa parte sono trattate le tecniche avanzate e gli elementi che entrano in
gioco quando PHP comunica con altri servizi, tecnologie, o grandi quantita'
di codice.
- I Capitoli da 34 a 36 si occupano dell’interazione fra PHP e altre tecnologie
utilizzate per i database (postgreSQL, Oracle e il livello di astrazione del
database di PERL);
- i Capitoli da 37 a 42 si occupano invece di argomenti a se' stanti: PHP e i
programmi di posta elettronica, combinare PHP e JavaScript, interazione
fra PHP e Java, PHP e XML, servizi Web basati su PHP e creazione di
elementi grafici utilizzando la libreria di immagini gd.
Parte V: Studi di casi
In questa sezione vengono presentati degli studi di casi estesi che riuniscono
varie tecniche gia' mostrate nei capitoli precedenti.
- Il Capitolo 43 e' una guida alla progettazione e implementazione di un
weblog;
- il Capitolo 44 presenta dettagliatamente un sistema di identificazione
utente;
- il Capitolo 45 mostra come costruire un sistema di valutazione che permetta
all’utente di dare un voto al contenuto;
- il Capitolo 46 si occupa dell’implementazione di un gioco a quiz, mostrandone
il codice per intero;
- il Capitolo 47 e' lo studio del processo di conversione di un sito HTML
statico in un sito dinamico in PHP;
- il Capitolo 48 utilizza la libreria di immagini gd per visualizzare i dati
ricavati da un database MySQL.
Parte VI: Appendici
Alla fine del volume, sono offerte tre appendici “a partenza rapida”, che possono
essere utilizzate da coloro che non conoscono PHP, ma possiedono gia'
familiarita' con il C (Appendice A), PERL (Appendice B), o con l’HTML puro
(Appendice C). Se ci si ritrova in una di queste tre situazione, il consiglio e'
quello di iniziare con l’appendice appropriata per ricavarne un orientamento
alle piu' importanti differenze e una guida per la consultazione del libro. L’ultima
appendice (la D), rappresenta una guida a importanti risorse, siti Web e
mailing list per la comunita' PHP. |