SlideShare a Scribd company logo
1 of 29
PHP Esempi d’uso del PHP per operazioni comuni Roberto Barbiera Corso di formazione per “Programmatori Web”
Overview ,[object Object],[object Object],[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO "PROGRAMMATORI WEB"
06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO "PROGRAMMATORI WEB" Generazione di documenti PDF
Generazione di documenti PDF La classe FPDF ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO "PROGRAMMATORI WEB"
Generazione di documenti PDF   Esempio di utilizzo 06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; <?php  require ('fpdf.php');  $pdf= new FPDF();  $pdf-> AddPage ();  $pdf-> SetFont ('Arial','B',16);  $pdf-> Cell( 40,10,'Hello World!');  $pdf-> Output ();  ?> Dopo aver incluso il file libreria, creiamo un oggetto  FPDF .  Il costruttore  FPDF()  viene usato, qui sopra, con i valori di default: le pagine sono formato A4, verticale, e con unità di misura in millimetri.  $pdf=new FPDF('P','mm','A4');
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Generazione di documenti PDF   FDF. Il costruttore
[object Object],[object Object],[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Generazione di documenti PDF   FDF->AddPage()
[object Object],[object Object],[object Object],[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Generazione di documenti PDF   FDF->SetFont()
[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Generazione di documenti PDF   FDF->Cell()
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Generazione di documenti PDF   FDF->Output()
06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Upload di file da WEB
[object Object],[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Upload di file da WEB  Il problema
[object Object],[object Object],[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Upload di file da WEB  Gli strumenti del PHP
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Upload di file da WEB Variabili di configurazione
[object Object],[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Upload di file da WEB  Passo 1: la form WEB < form   enctype =&quot;multipart/form-data&quot;  action =“upload.php&quot;  method =&quot;post&quot;> < input   type =&quot;hidden&quot;  name =&quot;MAX_FILE_SIZE&quot;  value =&quot;8000000&quot;> Seleziona il file: < input   type =&quot;file&quot;  name =&quot;data&quot;> < input   type =&quot;submit&quot;  name =&quot;submit&quot;  value =&quot;Invia&quot;> </ form >
[object Object],[object Object],[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Upload di file da WEB  Passo 2: verifica dei dati caricati // controllo della dimensione del file if  ($_FILES['data']['size'] == 0) { die (&quot;ERRORE: File caricato di zero byte &quot;); } // controllo della validità del file if  (! is_uploaded_file ($_FILES['data']['tmp_name'])) { die (&quot;ERROR: File non valido&quot;); }
06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Upload di file da WEB  Passo 3: salvataggio del file // mette il  contenuto in una variabile $fileData =  addslashes ( file_get_contents ($_FILES['data']['tmp_name'])); // ottiene il  nome e il tipo $fileType = $_FILES['data']['type']; $fileName = $_FILES['data']['name']; // apre la connessione al DB $connection =  mysqli_connect ('localhost', 'corso', 'corso', 'corsoPhp') or die (&quot;ERROR: Cannot connect&quot;); // crea ed esegue la insert sulla tabella $sql = &quot;INSERT INTO tb_file (file, nome, tipo) VALUES ('$fileData', '$fileName', '$fileType')&quot;; mysqli_query ($connection, $sql)  or die  (&quot;ERROR: &quot; . mysqli_error($connection) . &quot; (query $sql)&quot;); // chiude la connessione mysqli_close ($connection);
06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Inoltro di email
[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Inoltro di email  Il problema
[object Object],[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Inoltro di email   Gli strumenti del PHP
[object Object],[object Object],[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Inoltro di email  La funzione mail() L'implementazione Windows della funzione  mail()  differisce sotto molti aspetti dall'implementazione Unix. In Windows non usa un programma in locale per comporre i messaggi, ma opera direttamente sui socket (vedi parametri SMTP e smtp_port in php.ini. In UNIX utilizza il comando sendmail
[object Object],[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Inoltro di email   Le classi Mail_mime e Mail
[object Object],[object Object],[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Inoltro di email   Le classi Mail_mime e Mail
06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Integrazione di applicazioni  con il CAS Central Authentication Service
[object Object],[object Object],[object Object],[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Integrazione di applicazioni  con il CAS  Il  CAS
[object Object],[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Integrazione di applicazioni  con il CAS  Predisporre l’ambiente
[object Object],[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Integrazione di applicazioni  con il CAS  Integrare il CAS NOTA:  In PHP 5.x sostituire nel file CAS.php la linea di codice: if (version_compare(PHP_VERSION,'5','>=')) { con la seguente if (version_compare(PHP_VERSION,'5','>=') && !function_exists(&quot;domxml_new_doc&quot;)) {
[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; include_once ('CAS/CAS.php'); phpCAS::client (CAS_VERSION_2_0,'sso.unipa.it',443,'cas',false); phpCAS::setNoCasServerValidation (); phpCAS::forceAuthentication (); $username =  strtoupper ( phpCAS::getUser() );  if  ( isset ($username) &&  trim ($username) != &quot;&quot;) { //imposta una variabile di sessione indicante il fatto che l'utente è loggato //nell'applicazione locale $_SESSION ['loggedInLocally'] = true;  // imposta una variabile di sessione contentente lo username $_SESSION ['username'] =  phpCAS::getUser();  } Integrazione di applicazioni  con il CAS  Integrare il CAS
[object Object],[object Object],06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Integrazione di applicazioni  con il CAS  Integrare il CAS include_once ('CAS/CAS.php'); phpCAS::setDebug (); phpCAS::client (CAS_VERSION_2_0,'sso.unipa.it',443,'cas',false); phpCAS::logout ();

More Related Content

Similar to Php Operazioni Comuni Barbiera 97

2 Linux Comandi Essenziali
2 Linux Comandi Essenziali2 Linux Comandi Essenziali
2 Linux Comandi Essenziali
Mauro Ferrigno
 
JAMP DAY 2010 - ROMA (3)
JAMP DAY 2010 - ROMA (3)JAMP DAY 2010 - ROMA (3)
JAMP DAY 2010 - ROMA (3)
jampslide
 
Laboratorio Di Basi Di Dati 07 Programmazione Web Lato Server
Laboratorio Di  Basi Di  Dati 07  Programmazione  Web Lato ServerLaboratorio Di  Basi Di  Dati 07  Programmazione  Web Lato Server
Laboratorio Di Basi Di Dati 07 Programmazione Web Lato Server
guestbe916c
 
Tesi Discussione
Tesi DiscussioneTesi Discussione
Tesi Discussione
Yeser Rema
 
Introduzione al linguaggio PHP
Introduzione al linguaggio PHPIntroduzione al linguaggio PHP
Introduzione al linguaggio PHP
extrategy
 
Web Services, le librerie Nusoap e PHP5 nell’interrogazione dei dati demograf...
Web Services, le librerie Nusoap e PHP5 nell’interrogazione dei dati demograf...Web Services, le librerie Nusoap e PHP5 nell’interrogazione dei dati demograf...
Web Services, le librerie Nusoap e PHP5 nell’interrogazione dei dati demograf...
Vincenzo Patruno
 

Similar to Php Operazioni Comuni Barbiera 97 (20)

Introduzione a JavaScript e jQuery (2/2)
Introduzione a JavaScript e jQuery (2/2)Introduzione a JavaScript e jQuery (2/2)
Introduzione a JavaScript e jQuery (2/2)
 
Laboratorio internet 9: Sviluppo delle funzioni
Laboratorio internet 9: Sviluppo delle funzioniLaboratorio internet 9: Sviluppo delle funzioni
Laboratorio internet 9: Sviluppo delle funzioni
 
Primo Incontro Con Scala
Primo Incontro Con ScalaPrimo Incontro Con Scala
Primo Incontro Con Scala
 
2 Linux Comandi Essenziali
2 Linux Comandi Essenziali2 Linux Comandi Essenziali
2 Linux Comandi Essenziali
 
Corso di php01
Corso di php01Corso di php01
Corso di php01
 
Gli HTTP Security Header e altri elementi da sapere su HTTP in un Web Applica...
Gli HTTP Security Header e altri elementi da sapere su HTTP in un Web Applica...Gli HTTP Security Header e altri elementi da sapere su HTTP in un Web Applica...
Gli HTTP Security Header e altri elementi da sapere su HTTP in un Web Applica...
 
Presentazione Corso - Parte 2
Presentazione Corso - Parte 2Presentazione Corso - Parte 2
Presentazione Corso - Parte 2
 
Dream report presentazione it-mg emt2
Dream report presentazione it-mg emt2Dream report presentazione it-mg emt2
Dream report presentazione it-mg emt2
 
JAMP DAY 2010 - ROMA (3)
JAMP DAY 2010 - ROMA (3)JAMP DAY 2010 - ROMA (3)
JAMP DAY 2010 - ROMA (3)
 
Non Conventional Android Programming (Italiano)
Non Conventional Android Programming (Italiano)Non Conventional Android Programming (Italiano)
Non Conventional Android Programming (Italiano)
 
Laboratorio Di Basi Di Dati 07 Programmazione Web Lato Server
Laboratorio Di  Basi Di  Dati 07  Programmazione  Web Lato ServerLaboratorio Di  Basi Di  Dati 07  Programmazione  Web Lato Server
Laboratorio Di Basi Di Dati 07 Programmazione Web Lato Server
 
jQuery e i suoi plugin
jQuery e i suoi pluginjQuery e i suoi plugin
jQuery e i suoi plugin
 
Creare Documenti Scientifici Accessibili
Creare Documenti Scientifici AccessibiliCreare Documenti Scientifici Accessibili
Creare Documenti Scientifici Accessibili
 
Tesi Discussione
Tesi DiscussioneTesi Discussione
Tesi Discussione
 
eZ magazine: soluzione completa per la gestione multicanale della tua rivista
eZ magazine: soluzione completa per la gestione multicanale della tua rivistaeZ magazine: soluzione completa per la gestione multicanale della tua rivista
eZ magazine: soluzione completa per la gestione multicanale della tua rivista
 
Web Semantico: da XHTML a RDF in 3 click
Web Semantico: da XHTML a RDF in 3 clickWeb Semantico: da XHTML a RDF in 3 click
Web Semantico: da XHTML a RDF in 3 click
 
Introduzione al linguaggio PHP
Introduzione al linguaggio PHPIntroduzione al linguaggio PHP
Introduzione al linguaggio PHP
 
Form e HTML basi
Form e HTML basiForm e HTML basi
Form e HTML basi
 
Internet e Posta Elettronica
Internet e Posta ElettronicaInternet e Posta Elettronica
Internet e Posta Elettronica
 
Web Services, le librerie Nusoap e PHP5 nell’interrogazione dei dati demograf...
Web Services, le librerie Nusoap e PHP5 nell’interrogazione dei dati demograf...Web Services, le librerie Nusoap e PHP5 nell’interrogazione dei dati demograf...
Web Services, le librerie Nusoap e PHP5 nell’interrogazione dei dati demograf...
 

Php Operazioni Comuni Barbiera 97

  • 1. PHP Esempi d’uso del PHP per operazioni comuni Roberto Barbiera Corso di formazione per “Programmatori Web”
  • 2.
  • 3. 06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Generazione di documenti PDF
  • 4.
  • 5. Generazione di documenti PDF Esempio di utilizzo 06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; <?php require ('fpdf.php'); $pdf= new FPDF(); $pdf-> AddPage (); $pdf-> SetFont ('Arial','B',16); $pdf-> Cell( 40,10,'Hello World!'); $pdf-> Output (); ?> Dopo aver incluso il file libreria, creiamo un oggetto FPDF . Il costruttore FPDF() viene usato, qui sopra, con i valori di default: le pagine sono formato A4, verticale, e con unità di misura in millimetri. $pdf=new FPDF('P','mm','A4');
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11. 06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Upload di file da WEB
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17. 06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Upload di file da WEB Passo 3: salvataggio del file // mette il contenuto in una variabile $fileData = addslashes ( file_get_contents ($_FILES['data']['tmp_name'])); // ottiene il nome e il tipo $fileType = $_FILES['data']['type']; $fileName = $_FILES['data']['name']; // apre la connessione al DB $connection = mysqli_connect ('localhost', 'corso', 'corso', 'corsoPhp') or die (&quot;ERROR: Cannot connect&quot;); // crea ed esegue la insert sulla tabella $sql = &quot;INSERT INTO tb_file (file, nome, tipo) VALUES ('$fileData', '$fileName', '$fileType')&quot;; mysqli_query ($connection, $sql) or die (&quot;ERROR: &quot; . mysqli_error($connection) . &quot; (query $sql)&quot;); // chiude la connessione mysqli_close ($connection);
  • 18. 06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Inoltro di email
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24. 06/06/09 UNIVERSITA' DEGLI STUDI DI PALERMO - CORSO &quot;PROGRAMMATORI WEB&quot; Integrazione di applicazioni con il CAS Central Authentication Service
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.