(In
fondo alla pagina alcune notizie sulla programmazione in Php) |
Esperienze lavorative di Osiride
Luca Cascioli
Novembre 2006 a oggi
Con la M.C. Elettrici di Milano svolgo mansioni di programmatore PHP.
In particolare mi occupo della creazione del sito www.isicuri.com e dello sviluppo degli applicativi ad esso associati.
(Contratto a tempo indeterminato).
Settembre 2006 a Novembre 2006
Con la Energee3 di Reggio Emilia in collaborazione con la Etnoteam di Milano svolgo per la VODAFONE di Milano attivita’ di programmatore Forte’ e Java e sistemista per i programmi sviluppati.
In particolare ho svolto mansioni di manutenzione degli applicativi Forte’ che costituiscono parte del BackEnd del portale 190 e analisi, progettazione, sviluppo e implementazione del porting di tali applicativi da Forte’ a Java.
(Contratto a progetto).
Marzo 2006 a Settembre 2006
Con la societa’ Energee3 di Reggio Emilia ho svolto per la MATRIX di Milano attivita’ di programmatore PHP all’interno del gruppo che si occupa del motore di ricerca di VIRGILIO.
In particolare ho avuto mansioni di analisi, progettazione, sviluppo, implementazione, modifica e manutenzione di svariati applicativi Web e script Linux.
Sviluppo Web: HTML, PHP, XML, XSLT e JAVAscript.
Base Dati: Oracle, MySQL.
Web Server: Apache.
(Contratto a progetto)
Febbraio 2005 - Marzo 2006
Presso la sede Matrix di largo la Foppa, analista programmatore PHP, per
l’aggiornamento, il monitoring e il miglioramento del motore di ricerca
del portale Virgilio. Sotto contratto con la Energee3 Milano.
Settembre 2006 - Febbraio 2005
Programmatore presso la H3G di Trezzando sul Naviglio (Milano),
supporto sistemistico Unix/Sun Solaris/WindowsNT e referente per l’installazione,
l’implementazione e il supporto dell’applicativo DMS all’interno del team
di Deployment Piattaforme, sotto contratto con la f2informatica in collaborazione
con la Soprà Italia sede di Milano.
Ottobre 2004 - Febbraio 2005
Per la f2informatica di Milano, capoprogetto per lo sviluppo e
l’implementazione di un portale in grado di gestire le risorse umane,
i fogli presenze, i clienti, le commesse, i contatti, le fatture e le
retribuzioni dell’azienda.
Web developer in HTML, PHP e JAVAscript su Base Dati MySQL con Web Server
Apache, con studio e utilizzo di applicazioni su CMS in PHP (xoom, nuke,
postnuke, flatnuke, mkportal, mambo, vbulletin, invision power board,
drupal, phpwebsite).
Gennaio 2003 - Ottobre 2004
Per la T.I.M. di Roma, programmatore responsabile per lo sviluppo del progetto
di Restyling del sito intranet Supporto Utente che offre servizi informativi
e di supporto interno aziendale, sotto contratto con la Nexse s.r.l. in
collaborazione con la C.S.C. Italia sede di Roma.
Responsabile per l’installazione, personalizzazione, supervisione, controllo
e gestione dell’applicativo TimForum (modificazione del Jive Forum) atto
ad aumentare lo scambio di informazioni tra Back Office ed Help Desk.
Capoprogetto per lo sviluppo, la progettazione, e l’implementazione di molteplici
applicativi Web (es: sistema documentale; gestione pagine personali; monitoraggio
flussi di rete; gestione del personale; gestione foglio presenze;).
Capoprogetto per l’implementazione e l’autenticazione tramite LDAP delle
varie sezioni del sito.
Web developer in HTML, ASP, PHP, JSP, JAVAscript, VBscript, e FLASH con
configurazione applicativi in XML su Base Dati, Oracle (PL-SQL), MySQL e
Access con Web Server I.I.S., Apache e Tomcat e utilizzo CMS per PHP (xoom,
nuke).
Agosto 2002 - Dicembre 2002
Per la Interact di Roma, programmatore e sviluppatore di applicativi
web per l’azienda (che sviluppa e mantiene vari siti tra i quali quello
della Camera dei Deputati).
Web developer in HTML, ASP, JAVAscript, VBscript, Flash e programmatore
junior su piattaforma Microsoft Visual Studio .NET su Base Dati Microsoft
SQL 2000 Server con Web Server Apache Tomcat.
Giugno 2002 - Dicembre 2002
Programmatore E script per il videogioco Ultima Ondine Su piattaforma Pol
94-AoS.
Programmatore Visual Basic per calcoli algoritmici.
Conoscenze informatiche
Piattaforme Hardware:
PC desktop e notebook, Workstation Client / Server (Digital/Compaq/HP).
Sistemi Operativi:
Microsoft Windows ( ‘9x / 2000 Prof. / 2000 Server / NT / ME /
XP / 2003 server ), MS-DOS, Linux (Slackware, Ubuntu), Unix (Solaris).
DataBase:
ORACLE (PL-SQL, TOAD), SQL Server (Microsoft), Access (Office),
MySQL.
Protocolli di trasmissione:
TCP/IP, NETBUI (Microsoft), HTTP, FTP.
Linguaggi:
ASP, PHP, JSP, XML, CSS, HTML, Javascript, Vbscript, Flash MX,
Java, C#, E script.
Web Server:
Internet Information Service, Apache, Tomcat, Bea Weblogic Server.
Software & Applicativi:
Remote Desktop Connection, SSH, Secure CRT, StarTeam, ANT, Pacchetto Office
‘97 - 2003, OpenOffice, Internet Explorer, FireFox, Mozilla, Opera, Netscape,
HomeSite, Dreamwaver MX, Flash MX, Photoshop, Adobe Acrobat, Top Style,
Front Page, MySQL-Front, CMS vari.
Corsi professionali
Corso di programmazione in Java Web Oriented, della durata di 650
ore seguito presso l’istituto Mezzelani in Roma.
Istruzione
Studi precedenti: diploma di scuola media statale presso la Cornelio
Nipote di Roma.
Titolo di studio: diploma scientifico conseguito nell’anno scolastico
2000/2001 presso il liceo scientifico statale Cavour di Roma.
Lingue straniere: Inglese con un buon livello di conoscenza dei
termini tecnico-scientifici.
Data
di nascita: 27 - 02 - 1981
Stato civile: Celibe
Servizio militare: Assolto
Residenza: via Filippo Meda, 169 00157 Roma
Domicilio a Milano: via Benedetto Spinoza 2, 20131 Milano
Telefono: 380 3985805
Email: osiride.cascioli@gmail.com |
Alcune
notizie sulla programmazione in Php |
Introduzione a PHP
Il PHP è un linguaggio di scripting server-side che consente lo sviluppo sia di siti generati dinamicamente,
sia di applicazioni che incorporano connessioni a database e data processing.
La flessibilità e scalabilità ne fanno uno dei più
popolari linguaggi di scripting server-side su piattaforme Unix/Linux.
Inoltre, la precisa definizione della sua sintassi e dei suoi costrutti
lo rendono più amichevole di altri linguaggi tipo Perl, Python,
C/C++ o ASP.Il PHP offre una marea di funzionalità per gli sviluppatori
Web, che consentono di produrre un codice solido, compatto e riutilizzabile.Lo
scopo del linguaggio è di consentire agli sviluppatori web di realizzare,
in modo veloce, pagine dinamiche. Per pagine dinamiche, in questo contesto,
intendiamo pagine il cui contenuto viene, almeno in parte, generato nel
momento in cui le stesse vengono richieste al web server, ovunque esso
sia, a Londra o a Roma.
Un esempio classico di pagina dinamica è fornito dai ben noti motori
di ricerca: i risultati che vengono restituiti a seguito di un’interrogazione
non sono pagine web statiche, bensì documenti generati "su
misura", sulla base della nostra richiesta.Tornando al PHP, la definizione
"ufficiale" tratta dal manuale in lingua inglese, su http://www.itportal.it/developer/asp/php_intro/www.php.net,
chiarisce le caratteristiche peculiari di questo linguaggio, e precisamente:
Il PHP è un linguaggio di scripting. E’ un linguaggio "HTML-embedded,
Opera server-side, cioè lato server. Vediamo, uno per volta, il
significato di questi punti. Il PHP è un linguaggio di scriptingI
programmi scritti in linguaggio PHP, denominati brevemente script, vengono
eseguiti tramite un apposito software, "l’interprete" PHP. Quest’ultimo
si occupa di leggere il codice PHP e, interpretandone le istruzioni; esegue
le operazioni corrispondenti (ad esempio la lettura di un file o un calcolo
aritmetico). Dunque il PHP, tecnicamente, si definisce come un linguaggio
interpretato ed in questo si differenzia da altri linguaggi di programmazione,
come ad esempio C++ e Java, il cui codice sorgente, per poter essere eseguito,
deve prima essere compilato (tradotto cioè in codice macchina).PHP
è "HTML-embedded".
Questa caratteristica
si riferisce al fatto che il codice PHP è immerso nell’HTML; gli
script sono inseriti, in altre parole, nelle pagine HTML in cui devono
produrre i loro effetti. Il web server riconosce le pagine PHP, distinguendole
da quelle "statiche", sulla base dell’estensione, che non sarà
la solita .htm o .html ma piuttosto .php4, .phtml o simili. Quando il
server riconosce un’estensione associata a PHP, passa il testimone all’interprete,
lasciando che sia quest’ultimo ad occuparsene.PHP opera server-side Eccoci
al punto cruciale: il PHP opera lato server. Cosa vuol dire? Molto semplicemente,
significa che l’elaborazione di uno script avviene sul server, prima che
questi spedisca la pagina al browser (il "client"). Di conseguenza,
chi accede ad una pagina PHP non ha la possibilità di leggere le
istruzioni in essa contenute: essendo state processate, ciò che
il client vedrà sarà il risultato dell’elaborazione; insomma,
il client vedrà cosa fa lo script ma non come lo fa. Il vantaggio
è proprio questo: nessun utente esterno, tranne il webmaster, può
accedere al codice per modificarlo. Per l’utente esterno, la pagina in
PHP è esattamente uguale a una qualsiasi pagina in html. La sintassi
Un cenno, infine, alla sintassi del linguaggio, che ricalca in gran parte
quella di altri popolari linguaggi di programmazione quali C/C++, Java
e Perl. Il neofita del PHP che abbia una minima conoscenza di uno qualsiasi
di questi linguaggi, pertanto, è sollevato dalla fatica di dover
apprendere da zero una nuova grammatica.
A chi serve un esperto di programmazione Php
che lavora a Roma?
Un classico esempio di pagine dinamiche è fornito dai motori di
ricerca: i risultati che vengono restituiti a seguito di un’interrogazione,
non sono pagine web statiche, bensì documenti generati su misura,
sulla base della nostra richiesta. E’ immediato e familiare. Tuttavia,
la necessità di generare automaticamente il contenuto di pagine
web si presenta in molte altre situazioni. Si pensi ad un qualsiasi sito
Internet che fornisce in tempo reale (o quasi reale) gli indicatori dell’andamento
del mercato azionario, o i risultati della giornata sportiva, o ancora
la situazione del traffico automobilistico, ecc
Se non si vuole
andare troppo lontano, si pensi al caso più concreto dell’azienda
che ha bisogno di pubblicare sul Web il proprio catalogo di prodotti o
servizi: si tratta di esigenze non troppo dissimili. In queste ed in molte
altre situazioni occorre avere a disposizione strumenti che consentano
un’agevole manutenzione del sito web, e allo stesso tempo rendano possibile
la comunicazione con uno o più database. Semplice e potente, il
linguaggio PHP rappresenta la soluzione ideale ad una vastissima gamma
di esigenze, come indiscutibilmente dimostrato, del resto, dalla sua crescente
popolarità e dal sempre maggiore numero di applicazioni Internet/intranet
basate su di esso.
I fondamenti
L’approccio al PHP sarà semplice per chi abbia acquisito familiarità
con altri linguaggi strutturati o orientati agli oggetti. Anche per chi
ha una limitata esperienza di programmazione, i fondamenti di questo linguaggio
sono lungi dall’essere molto impegnativi. Ad ogni modo, se ci si dovesse
bloccare durante lo sviluppo di un progetto, è possibile trovare
in Rete numerosi siti che raccolgono codice PHP, così come una
vivace mailing list e anche board web-based.
Inoltre a Roma ci
sono esperti nella programmazione in Php, come quello di cui ospitiamo
il curriculum, pronti a sommergervi di consigli e consulenze |
Codice che scompare
Il modo più intuitivo per introdurre un concetto è, molto
spesso, quello di ricorrere ad un esempio, considerando il listato seguente.
<html><head><title>Codice che scompare!</title></head><body><script
language="php">echo "<h1>Codice che scompare</h1>";echo
"<p>In un precedente...</p>";</script></body></html> |
| Salviamo il tutto
in un file con estensione .php4 e carichiamo il file (o, come si dice, facciamone
l’upload) sul nostro spazio web. Si noti che, in questo passaggio, stiamo
assumendo di avere a disposizione un server con supporto PHP: almeno per
ora può essere indifferentemente quello del nostro Internet Service
Provider o il nostro PC, se abbiamo installato il software necessario; al
contrario, in mancanza di questo requisito non saremo in grado di effettuare
nessuna prova. Accediamo adesso alla pagina (l’indirizzo sarà del
tipo http://.../nostrofile.php4) e visualizziamone il codice HTML. Se tutto
ha funzionato quello che vedremo sarà: |
| <html><head><title>Codice
che scompare!</title></head><body><h1>Codice che
scompare</h1><p>In un precedente...</p></body></html> |
Osserviamo subito
che non vi è nessuna traccia dello script PHP: ci viene restituito
solo il risultato dell’elaborazione e non esiste alcun modo per risalire
al codice originale. Se non fossimo stati noi a scrivere la pagina, non
avremmo modo di sapere se questa fosse già così (cioè
non conteneva codice ma solo HTML puro) o se, oltre a scrivere quello che
vediamo, avesse anche calcolato 50 numeri primi o fatto chissà cos’altro
Considerazioni
Il nostro codice, insomma, è al sicuro e possiamo affidargli qualsiasi
informazione (compresi i nostri sogni più segreti!) con la garanzia
che nessun client sarà in grado di carpirli indebitamente.
Esistono, del resto, dei casi concreti in cui la suddetta invisibilità
del codice è addirittura essenziale. Ad esempio, quando si accede
ad un database, per poter operare su di esso è necessario autenticarsi,
cioè fornire un nome utente ed una password, che sono informazioni
riservate; l’autenticazione, inoltre, deve essere effettuata tutte le volte
che uno script si collega al database, per cui necessariamente la coppia
user/password deve essere contenuta nel codice. E’ evidente, quindi, come
il PHP ci renda un gran servizio, consentendoci di custodire tali informazioni
nelle nostre pagine dinamiche in tutta sicurezza.
Un altro risvolto degno di nota è rappresentato dai commenti; i commenti
sono previsti sia nell’HTML che nel PHP e la loro funzione è sostanzialmente
la stessa, cioè quella di fornire indicazioni e chiarimenti sul contesto
in cui vengono inseriti; tuttavia, l’avrete già indovinato, esiste
una profonda differenza: i commenti PHP sono parte integrante del codice
e risulteranno invisibili al client; viceversa, i commenti HTML saranno
visibili. Il seguente frammento di pagina PHP ed il relativo output dovrebbero
chiarire ulteriormente questo punto. |
<!--
Questo e’ un commento HTML e sara’ visibile dal client-->
<script language="php">// Questo e’ un commento PHP e sara’
invisibileecho "<!-- Questo si vedra’: tutto chiaro? -->";</script>L’output
sarà il seguente:<!-- Questo e’ un commento HTML e sara’ visibile
dal client--><!-- Questo si vedra’: tutto chiaro? --> |
Conclusioni
Lo scopo di quest’articolo
era quello di tracciare una veloce panoramica sul PHP, ad uso principalmente
di chi, pur avendo sentito parlare, non ha mai avuto l’occasione di avvicinarcisi
un po’ al linguaggio. Costituisce altresì un punto di partenza,
per i lettori interessati, per uno studio più approfondito dell’argomento.
[Liberamente tratto da www.itportal.it ] |
La programmazione
PHP
Come si è detto, PHP
è un vero e proprio linguaggio di programmazione, anche piuttosto
evoluto. Referenziando l’indirizzo http://host/cgi-bin/php/test.html,
il file test.html viene letto dall’interprete PHP, e le istruzioni presenti
sono eseguite, ivi comprese quelle di stampa che servono a produrre i
contenuti della pagina html che è restituita ad Apache e da questi
al client remoto. Nello stesso file possono inoltre essere presenti tag
HTML, che sono invece passati inalterati; per distinguere le linee di
codice dai tag HTML che devono essere restituiti inalterati, i blocchi
di codice PHP sono circondati da delimitatori del tipo <? ?>. Un
file sorgente PHP è quindi caratterizzato dall’essere leggibile
su due livelli: il primo è quello di una normale pagina HTML, nel
cui contesto viene annidato il codice PHP, che può dunque essere
letto letteralmente ``tra le righe’’, ed il risultato della cui esecuzione
dà luogo alle componenti dinamiche della pagina.
PHP e le variabili
Una caratteristica notevole del PHP è la sua capacità di
accedere direttamente sia alle variabili di ambiente passategli da Apache,
come ad esempio l’IP del client che stà richiedendo la pagina,
sia ai valori dei controlli presenti e/o inseriti nell’ambito di un tag
HTML FORM, in cui la ACTION è la pagina contenente il codice PHP
che riceve i valori. Ciò consente di trattare una pagina PHP alla
stregua di una funzione, richiamabile con i parametri definiti dai controlli
presenti nella FORM che la referenzia. In tal modo, il codice PHP può
operare in base ai valori immessi o selezionati dai client remoti; inoltre
la FORM può contenere dei controlli di tipo HIDDEN, i cui valori
non sono immessi dal client nè resi espliciti, ma che possono sopperire
alla natura stateless del protocollo HTTP, per mantenere memoria da una
pagina all’altra di scelte già effettuate in precedenza.
PHP ed i links
Le pagine PHP possono evidentemente contenere ANCHOR ad altre pagine PHP:
in questo caso è possibile realizzare il link utilizzando i risultati
della elaborazione appena effettuata, sia mediante controlli HIDDEN all’interno
di FORMS, sia costruendo l’indirizzo della nuova pagina secondo la sintassi
usata dal metodo get di chiamata del CGI, ossia realizzando un riferimento
del tipo http://host/cgi-bin/php/test.html?var1=val1&var2=val2&var3=...
, in cui è definita una stringa di coppie variabile-valore. Uno
dei vantaggi di tale tipo di riferimento è che il link così
costruito è inseribile direttamente anche in pagine ``normali’’,
e può essere seguito da motori di ricerca, che sono così
posti in grado di indicizzare anche le pagine dinamiche.
PHP ed i database
Un’altra caratteristica notevole del PHP è la sua predisposizione
ad interrogare una vasto numero di DBMS, usando i protocolli nativi di
interrogazione degli stessi. Le query da eseguire sono in genere definite
in base alle scelte effettuate dal client remoto nel contesto della FORM
corrispondente, ma possono egualmente bene essere invocate mediante un
indirizzo ``lungo’’, in cui la query è descritta in termini di
una sequenza di coppie variabile=valore.
L’esito delle interrogazioni viene quindi stampato dal PHP, producendo
la pagina HTML dinamica contenente le informazioni richieste. La grande
forza di questo approccio risiede nel poter generare pagine di risposta
in cui sono annidate ulteriori query preimpostate sulla base dei risultati
mostrati, e che consentono di navigare nel database seguendo un percorso
fortemente soggettivo, in grado di seguire tutte le associazioni previste
dalle pagine di risposta.
http://freephp.html.it/articoli/view_articolo.asp?id=143 |
Come
si usa la programmazione in Php
Tenendo conto
dei costrutti fondamentali di PHP, possiamo dire che il programma serve
ad effettuare:
Manipolazione di array e stringhe Interazione con l’utente
Gestione di cookie e sessioni
Manipolazione di file
Elaborazione grafica con la libreria GD
Creazione di documenti PDF
Gestione di database in MySQL
Imparare ad usare il Php, permette:
Modifica degli script PHP
Salvataggio degli script PHP
Visualizzazione dell’output PHP
Formattazione delle istruzioni PHP |
| Risorse
su Internet per la programmazione Php |
Risorse ufficiali
http://www.php.net/ il sito madre di/sul
php
http://www.zend.com/ il sito dell’azienda
che sviluppa il motore funzionante di php
http://www.apache.org/ il web server
per php
http://www.mysql.com/ uno dei migliori
database da usare con php
http://www.postgresql.org/ il fratello
alternativo a mysql
http://www.w3.org/ il World Wide Web Consortium
(W3C) sviluppa tecnologie che garantiscono l’interoperabilità (specifiche,
guidelines, software e applicazioni) per guidare il World Wide Web
fino al massimo del suo potenziale agendo da forum di informazioni, comunicazioni
e attività comuni.
Guide ed esempi sul PHP
http://freephp.html.it/ dove si trovano
alcuni articoli interessanti sul php e un pò di esempi da studiare.
http://freephp.html.it/ un’altra risorsa
utile per capire cos’è il php e come si scrive
http://www.webmasterpoint.org/php/home.asp anche qui ci sono molti scritp e tutorial sul php
CMS
http://drupal.org/ uno dei migliori cms
in php esistenti, utilizzato anche da Mozilla
http://www.flatnuke.org/index.php il miglior prodotto italiano in php senza bisogno di database
http://www.xaraya.com/ un portale php
che rispetta tutte le specifiche W3C
http://www.joomla.org/ un gestionale
php veramente potente e completo dal punto di vista funzionale e grafico
http://www.xoops.org/ un famoso portale
php con un buon supporto e molteplici funzionalità |
Html.it:
FreePhp |
E’ un’associazione ufficiale
e no-profit. Propone informazioni sul linguaggio, realizzazione
di corsi, incontri ed eventi. |
http://freephp.html.it |
LatoServer.it: Php |
Contiene numerosi tutorial,
articoli e guide sul linguaggio. Disponibili inoltre utili script
recensiti e ordinati per categoria. |
http://www.latoserver.it/php/pi-acca-pi.php3 |
Lezioncina sul Php3 |
Articoli introduttivi
ed avanzati, forum, esempi, e un corso per principianti liberamente
scaricabile in formato Pdf. |
http://www.itis.mn.it/php3/index.htm |
Manuale
Php |
Breve lezione sull’utilizzo
di Php3. Utile per acquisire i concetti di base sul linguaggio ed
interfacciarlo con il DBMS Postgresql. |
http://www.php.net/manual/it |
Manuale
Php-Gtk |
Documentazione ufficiale
in italiano del linguaggio. Vengono descritte semantica, lessico,
sintassi e tutte le funzioni del linguaggio. Approfondimenti da
parte della comunità di sviluppatori. |
http://gtk.php.net/manual/it |
Mr.
Webmaster: Php |
Manuale ufficiale in
italiano di quest’estensione. |
http://www.mrwebmaster.it/fareweb/php |
MyPhp.it |
Propone guide, manuali,
tutorial e script da consultare e scaricare. |
http://www.myphp.it |
Naufraghi nella rete:
Php |
Notizie, guide, Faq,
tutorial e script. Tutto il materiale è accompagnato da esaurienti
descrizioni e da esempi. |
http://naufraghi.free.fr/php |
Php Friuli Venezia Giulia |
E’ esposta la realizzazione
di un sistema informativo internet utilizzando come Dbms PostgreSQL.
Viene offerto uno sguardo d’insieme senza cadere nei particolari.
Interessante per i novizi del linguaggio. |
http://it.groups.yahoo.com/group/php_fvg |
|
|