Creare un sondaggio originale con PHP, jQuery Ui e Raphael.js
Pagina 1 di 10
Capita abbastanza spesso di imbattersi in sondaggi online, da quelli proposti sui siti dei maggiori quotidiani a quelli a tema tecnologico sino ad arrivare a quelli più prosaici dei siti di gossip. La considerazione generale che mi sento di fare è questa: sono veramenti brutti (adoro i giudizi tranchant).
Premesso che non sviluppo un survey (o poll) da tempo e sono quindi slegato da ogni best-practice ho deciso di affidarmi alla fantasia per crearne uno.
Al momento non ho un scopo preciso per farlo se non quello di condividerlo con voi unendo diverse tecniche che in parte abbiamo già visto nei precedenti articoli da me scritti ed aggiungendo qualcosa che ancora non abbiamo utilizzato: gli accordion di jQuery Ui.
Premetto che non ho mai amato molto gli accordion. Sono utili per implementare delle applicazioni desktop-like, e spesso vengono utilizzati come container di testo nei siti con uno spiccato approccio minimalista, ma ogni volta che mi sono trovato sul punto di utilizzarli ho optato per altre soluzioni.
L'idea
Perchè non dare un compito diverso gli accordion rendendoli ordinabili e permettere così all'utente di trascinarli come componenti di una pila per indicare una classifica?
C'è qualcosa di già pronto sul web? Beh se così fosse reiventeremmo la ruota. Ma reinventare la ruota è una ottima cosa, si rischia di capire come funziona.
Ovviamente non basterà l'aiuto di jQuery Ui (accordion e sortables) ma ci serviranno anche PHP e MySql, inoltre per mostrare i risultati in maniera gradevole torneremo a fare uso di Raphael e di gRaphael, librerie Javascript che permettono di creare svg così come vi ho descritto in questo articolo.
La struttura dell'esempio
Il progetto sarà leggermente più articolato del solito, consterà nella struttura che vi allego nell'immagine che segue:

Una nota: dentro la folder phpajax metteremo i files php che forniranno le risposte alle chiamate asincrone provenienti da jQuery nel file index.js,
ho cercato di dare nomi parlanti ai files e di commentare il codice generosamente, in modo da chiarire ogni passaggio. Ma procediamo per gradi.







