Mar
31
Drupal e gli scherzi del %
Filed Under Affari miei | Leave a Comment
Da qualche settimana lavoro presso una societa che fa largo uso del CMS Drupal . Devo dire che sto superando la mia ostilita’ nei confronti dei CMS; sto scoprendo molti pregi di questo sistema che consente di sviluppare piuttosto velocemente siti con un comodo meccanismo di gestione account e permessi e di contenuti, anche se spesso mi fa impazzire per ore per cose veramente banali.
Ne elenco una perche’ potrebbe capitare a chiunque di inserire una query mysql facendo un like ‘%XXX%’ oppure una date_format(dt,’%d/%m/%Y’) e non ottenere cio’ che ci si aspetta anche se la stessa query effettuata su mysql non da’ problemi: ecco la soluzione —-> Drupal fa uso di %s , %d per sostituire, in stile C, le variabili passate alla funzione db_query; e’ quindi necessario ‘escapare’ il % con un altro %, quindi %% o con un backslash \% . La forma corretta quindi sara’ select XXX from YYY where CC like ‘%%pippo%%’ oppure select date_format(data,’%%d/%%m/%%Y’).
Hope that helps anybody….