Albrecht Duerer: il Cavaliere, la morte e l’operatore LIKE!

web design umbria

Mai sentita l’espressione il diavolo é nei dettagli? Si sente ovunque da Netflix alla TV di stato, dalle serie di telegabibbo a radio Clerici dedicata alle torte. Ma nell’ ambito front end developer che sta a significare? Risponde lo stesso Albrecht Duerer, classe ’71 (non facciamo scherzi dell’ anno millequattrocento eh) artista definito eliocentrico dalla critica perchè aveva l’ardire di far scivolare di soppiatto se stesso nelle opere senza dare troppo nell’ occhio. E’ il massimo esponente della pittura tedesca rinascimentale, immette nelle sue creazioni simbolismi e significati esoterici e lo fa tenendo conto di due grandi sguardi, quello che ogni progettista web ha ereditato anche da lui senza saperlo: la visione olistica della pianura vista dall’ alto e lo sporcarsi le mani toccando dal basso i dettagli. Se si guarda appunto l’opera dell’ incipit si scoprirà che quello che fa la differenza nella visione generale è proprio il diavolo, cioè il dettaglio. Ma tradotto nella vita complicata di un frontend developer di tutti i giorni che mi sta a significare? Che quando si mettono in piedi dei progetti sembra tutto facile, tutto olistico. E’ tutto idealizzato, sembra quasi che con uno schiocco di dita come per magia le cose si materializzino tanto per tornare all’ esoterismo sibolico dell’ artista tedesco. Invece sono i dettagli che invadono il tuo corpo, esattamente come il diavolo. Prendiamo ad esempio un problema stupido come quello di un meccanismo di ricerca da far funzionare come https://www.farwebdesign.com/umbriagallery/ : funziona bene, perchè se digito Spoleto salta fuori l’informazione che cerco e idem sia per le cittadine umbre sia per le frazioni sperdute tra le montagne. Ora prendiamo una frazione in località Nocera Umbra cap 06025 che si chiama Ponte Parrano e ipotizziamo che vittime dell’ anzianità ci ricordiamo che questo posto si chiama solo Parrano. Ora minuscolo o maiuscolo è indifferente, ma lo spazio in mezzo fa la differenza, che cosa sta succedendo? Perchè Parrano non salta fuori dalle mie ricerche e come faccio a materializzarlo nella pagina? Bella domanda, vediamo la query cosa dice:

$stmt = $dbh->query(“SELECT * FROM gallery WHERE descrizione LIKE ‘$search%'”);

web design umbriaDiavolo di un operatore like, quando qualcosa non funziona c’è un solo modo per risolvere il problema, ossia ogni frontend developer che non è nato da un falegname e una donna pia e misericordiosa deve andare a cercare quello che gli serve, consultare documentazioni varie e assortite presenti sul web (un imprenditore spietato potrebbe benissimo recidere il cavo della connessione della sua azienda e scoprirebbe in seguito ad un annuncio di selezione pubblicato su uno dei tanti siti di ricerca personale, che non esistono candidati ideali degni di essere assunti a 5000 euro al mese senza che possano cercare in rete le informazioni per risolvere un problema, ed è per questa ragione che un sito come https://stackoverflow.com/ ha così tanto successo, perchè milioni di piagnistei di aspiranti frontend developer trovano conforto in cerca di soluzioni!). Ora dobbiamo capire come funziona il meccanismo nel suo insieme ma poi bisogna prendere il diavolo per le corna. La pagina funziona che in ingresso raccoglie il risultato dello SPARO effettuato dal bottone SEARCH del FORM, questo proiettile viene accolto a braccia aperte con l’espressione:

if (!isset($_GET[‘search’]) || $_GET[‘search’] == null) {
header(“Location:404.php”);
} else {
$search = $_GET[‘search’]; }

che sta a significare se la variabile superglobalse $_GET è diversa da piena (presenza del punto esclamativo di nuovo un dettaglio da non trascurare!) oppure é nulla, ossia se una delle due condizioni diventa vera (OR logico espresso da || significa appunto che basta che solo una delle due condizioni si trasformi in reale) devi annullare la ricerca e tramite una istruzione javascript (header location) devi rimandare l’utente quasi al mittente, ossia mandalo sulla pagina 404.php, altrimenti (che è quella che interessa a noi) la variabile $search diventa uguale al valore della $_GET[‘search’]; ora essendo questo un bel diavolo da gestire, se torniamo indietro e guardiamo la query scopriamo che l’immonda creatura di variabile è proprio inserita dopo l’operatore LIKE e tuttavia continua a sfuggirci qualcosa…ma cosa? Allora bisogna studiare non c’è altro modo, altrimenti da animali onniscienti potremmo fare il mestiere di messia e profeta in terra non quello di frontend developer:

L’operatore LIKE utilizza due tipi di caratteri jolly per verificare le uguaglianze parziali. I due caratteri sono il simbolo percento ‘%’ e l’underscore ‘_’. Il primo carattere jolly sostituisce un insieme di caratteri, il secondo si limita a sostituirne uno solo. Il carattere jolly % aggiunto all’inizio o alla fine (o entrambi) di una stringa consentirà che 0 o più di qualsiasi carattere prima dell’inizio o dopo la fine del modello corrisponda.

Ok dopo aver cosparso con la conoscenza tecnica di internet il nostro diavolo siamo colti da una improvvisa intuizione e scriviamo questo codice che sta a significare “stupida macchina includi nella mia stringa di ricerca tutto il conoscibile, nel senso che adesso mi tirare fuori anche delle stringhe parziali senza senso del tipo ole per estrapolare SPoleTO, per esempio“:

$stmt = $dbh->query(“SELECT * FROM gallery WHERE descrizione LIKE ‘%$search%'”);

web design umbriail risultato finale è degno di un esorcismo, ovviamente prima di mandare la modifica in produzione ci preoccuperemo di risolvere il locale tramite XAMPP o altri software a corredo delle situazioni che sembrano generarsi da sole quando si lavora su progetti concreti che all’ inizio erano pianificabili con estrema facilità anche nelle tempistiche. Per esempio, adesso come faccio a fare ricerche multiple? Ossia se volessi anche cercare come CAP nello stesso form lo posso fare e se si come? Scarichi ormai dall’ impresa di aver riportato il diavolo di Albrecht Duerer nell’ incisione il Cavaliere, la morte e …. web design Umbria delega questa incombenza in uno dei prossimi post, al momento l’obiettivo che ci eravamo prefissi è stato raggiunto, adesso anche lo smemorato può trovare anche una minuscola frazione umbra dal nome composito! La conclusione è che non si può sapere tutto di tutto, soprattutto in un settore dove al forntend developer è richiesto dal mercato di essere uno e trino e deve conoscere tutto della Nina, la Pinta e la Santa Maria. Quando non si sa o non si ricorda qualcosa per risolvere un problema bisogna consultare la documentazione!

Crea un sito o un blog gratuito su WordPress.com.

Su ↑