PHP

Protezione WebServices e comunicazione

0

Avevamo visto in un articolo precedente come proteggere i siti in fase di sviluppo tramite .htaccess e .htpassword, ed effettivamente è un sistema molto comodo; tuttavia cosa succede quando è necessario sviluppare all'interno del sito dei WebServices che devono essere accessibili da remoto?

Vediamo come possiamo risolvere questo problema, sia ricorrendo all'autenticazione nella chimatada codice PHP che consentendo l'accesso da determinate macchine senza autenticazione.

Alterare lo schema di un modulo

5
Inserimento di una colonna in una tabella

Può capitare, a volte, di dover alterare lo schema di una tabella creata da un altro modulo, vedremo come effettuare questa operazione nella mianera corretta mantenendo l'integrità della struttura rappresentata dallo schema e quella effettivamente presente nel database.

da Array a XML e viceversa con PHP

3.8
Da array PHP a XML

Può essere utile, a volte, avere a disposizione delle funzioni che permettono di trasformare degli array in elementi XML, per esempio perché c'è necessità di fornire dei feed, o è necessario realizzare degli elementi particolari per comunicazioni verso altri dispositivi con chiamate REST (per esempio vogliamo creare delle API interrogabili e che possono fornire risposte in diversi linguaggi, come JSON, XMl, PHP serialized, ....), o con applicativi flash/flex/...

Reinventare ogni volta la ruota diventa scomodo e le problematiche che si hanno a gesitre il tutto tramite chiamate a SimpleXMLElement può non essere comodissimo, per questo ho realizzato questa classe che permette di trasformare (in maniera ricorsiva) degli array PHP in XML e viceversa, con la "particolarità" che gestisce senza problemi anche gli attributi per gli elementi.

Ordinamento di array

0
Ordinamento di elementi

Se vi capita di scrivere un array di oggetti (o di array) e di doverlo poi ordinare secondo criteri definiti, quale sono gli strumenti che php ci mette a disposizione? Vediamo ora come creare dei propri criteri di ordinamento e come ordinare questi array.

Sviluppo & Testing

0
PHP: debugging, testing, profiling

Come potremmo rappresentare il ciclo di sviluppo di un software? Andando con ordine avremmo, inizialmente l'analisi delle richieste, la fase di progettazione, la fase di implementazione, di test e infine il rilascio. Completato questi passaggi si passa alle fasi successive (aggiunta di funzionalità) che sono praticamente identiche (non per nulla si chiama ciclo).

Vedremo ora come andare ad effettuare delle analisi di test su un applicativo (web based). Metto subito le mani avanti dicendo che applicativi differenti hanno necessità differenti di risposta e quindi non necessariamente un test su di un certo applicativo è significativo per un altro o che i risultati su di un progetto siano comparabili con quelli di un altro. Facciamo un esempio: immaginiamoci un software che fornisca i risultati della ricerca in un archivio, questo ha dei di tempi di risposta di circa 200ms.

E' un buon risultato? La risposta corretta è...

Views con filtri dinamici

4.6
Pagina di ricerca con filtri dinamici nelle views

Le viste sono uno strumento estremamente potente e permettono di andare ad elaborare le informazioni creando degli elementi (pagine, blocchi, ...) di presentazione. La possibilità di usare dei filtri esposti ne fa degli strumenti adatti alla creazione di strumenti di ricerca dei contenuti.

L'utilizzo della tassonomia come filtro esposto per la ricerca, però, non è così intuitivo, poiché l'eventuale albero viene presentato tutto all'interno di un unica select con una struttura indentata, cosa che per l'utente fruitore medio non è così intuibile.
Nel caso di vocabolario con un elevato numero di termini questo è anche scomodo perchè verranno presentati tutti i termini avendo quindi una lista molto lunga di elementi, decisamente scomoda quando si cerca di trovare un informazione.

Vediamo ora come ricorrere ad una serie di menu a tendina che presentano le informazioni della tassonomia su livelli separati (una select per oogni livello), in cui i livelli successivi vengono caricati in maniera asincrona in base alla selezione precedente.

Creare preset per imagecache da codice

0
Pagina di personalizzazione di imagecache

A chi capita di realizzare moduli o profili di installazione per Drupal può capitar di dover andare ad appoggiarsi ad altri moduli, uno di quelli che mi capita spesso di utilizzare è il moduli imagecache, utilissimo nella gestione delle immaginidata l'ampia possibilità che fornisce.

Fortunatamente mette a disposizione una interfaccia utente (Imagecache UI) ottima che permette di creare dei preset (delle impostazione di visualizzazione delle immagini) in pochi passaggi ed in un modo pulito, ma nel caso in cui questi preset debbano essere creati da un modulo o da un profilo di installazione? Vediamo come crearli da codice.

Immagini (grandi) da GMaps

3.5
Immagine che rappresenta l'unione di diverse mappe di google in un unica immagine

Se a qualcuno di voi sono servite delle immagini satellitari, sicuramente siete corsi su gmap, ma l'impossibilità di scaricare le immagini direttamente porta a notevoli problemi, ci sono diversi workaround per risolvere, come andare a stampare il monitor, salvare l'immagine, ritagliarla; se però ci servono mappe che non stanno s di un unica pagina? Qui iniziano i problemi e le perdite di tempo, si passa a sctampare diverse immagini, attaccarle assieme, cosa non certo comoda, soprattutto per avere immagini su grandi formati.

Di recente mi è servito ottenere un immagine da stampare su di un cartellone (A2) per una scuola, quindi serviva un immagine molto grande, all'incirca 50MPx per avere una risoluzione decente per la stampa, per fare questo (odiando perdere tempo per stare li a fare le diverse operazioni a mano), mi sono inventato una serie di script che fanno queste operazioni, vediamo come usarli e ottenere il risultato finale.

Controllo del codice di Drupal (anche in gedit)

0

Come abbiamo visto in un articolo precedente gedit è un editr che ci permette di scrivere codice per Drupal in maniera estremamente semplice, ma perché limitarci a questo? Come sapete per poter pubblicare codice sul CVS ufficiale di Drupal è necessario che il codice che produciamo rispetti una serie di regole; spesso risulta comodo fare in modo che il controllo di queste regole di sintassi venga svolto in maniera automatica. Vediamo come è possibile farlo e come integrare questa funzionalità in gedit.

Visualizzare i commenti in posizioni differenti.

4

Quante volte, in fase di creazione o personalizzazione di un tema vi è capitato di non sapere come fare per posizionare i commenti dove volete voi, magari solo su determinate pagine, o magari solo se si verificano determinate condizioni? Bhè, a me è capitato alcune volte, e non sempre si poteva operare con una soluzione pulita, vediamo ora quel è il metodo migliore che sono riuscito a trovare.

Condividi contenuti