FTP upload e download con progress bar in PHP e JQuery

In questo articolo metto a disposizione una semplice classe in PHP che permette di effettuare upload e download di file verso un server FTP, inoltre è in grado di mostrare lo stato di avanzamento dell’operazione con una progress bar in javascript, ma non solo, perchè stampa anche altre informazioni statistiche come il numero di KB trasferiti e quelli totali, la velocità istantanea e quella media e i secondi totali dell’operazione.
Approfondisci

Creare form in PHP senza scrivere una riga di HTML

Una delle attività più ricorrenti per uno sviluppatore web è quello di creare form. Come immagino molti sanno, a lungo andare, diventa un compito piuttosto noioso, in cui ricorrono spesso la stessa tipologia di richieste.

Nonostante in rete si possano trovare numerose soluzioni a questo problema, ho deciso di svilupparne una mia perché nessuna di quelle che ho trovato si adattavano alle mie esigenze.

Le principali caratteristiche della mia soluzione sono:

  • definizione dei campi del form in XML
  • validazione dei dati
  • precompilazione dei campi
  • popolamento dei <select> da database
  • consente di replicare porzioni o l’intero form N volte senza duplicazioni di codice

Approfondisci

Creare un motore di ricerca con Lucene e PHP

Durante uno dei miei progetti mi è capitato di dover trovare una soluzione per creare un motore di ricerca in grado di indicizzare diversi tipi di file, come documenti di Microsoft Office, PDF e testo semplice.

Indicizzare documenti Microsoft Office con Lucene

La prima soluzione che mi è venuta in mente è di utilizzare Lucene.
Lucene è un progetto open source che fornisce la tecnologia necessaria per l’indicizzazione e la ricerca di testo. È scritto in Java, quindi è indipendente dalla piattaforma, inoltre non è una vera e propria applicazione, ma un insieme di librerie, quindi si può aggiugere come modulo ad applicazioni già esistenti. Altro punto di forza è la possibilità di effettuare ricerche full text.

Sebbene sia molto avanzato, da solo non consente l’indicizzazione di documenti nei formati già citati, però fornisce delle API per consentire di effettuare il parsing con codice esterno.
Per svolgere questo compito si può utilizzare Tika, un sotto-progetto di Lucene.
Approfondisci

Connessioni sicure a MySQL con SSL

MySQL supporta connessioni sicure (criptate) tra client e server sfruttando il protocollo Secure Sockets Layer (SSL).
In questo articolo affronteremo per prima cosa la generazione dei certificati, poi configureremo il server per supportare connessioni sicure e infine vedremo come poter richiedere l’autenticazione del client tramite certificato. In appendice ho inserito anche un breve script in PHP che mostra come è possibile sfruttare questo tipo di connessione.
Approfondisci