NoNiente.com Il sito personale di Sara…

13ago/090

Sto pomeriggio

Print Print

nel mio primo pomeriggio libero... (sìììì sono in ferie finalmente...), stavo cercando nozioni sugli stati della materia (e voi direte... non ti passa un cavolo...) scoprendo che ormai sono 5 più vari stadi intermedi (mentre io mi ero fermata a 3 stati in fisica alle superiori)... quando mi è tornata la voglia assurda di fare il test Mensa... così tanto per sfizio, per autostima... per ammettere che nella vita va così così, ma forse... bene o male, qualcosa nel cervello ce l'hai... nonostante tutto!

Ebbene sono andata a fare il test preliminare... sono 33 domande... secondo me belle toste però basta applicarsi un po' e si trova la soluzione... insomma non sono impossibili! Anche se a me fanno morire (intendo divertono molto) quelle con i numeri.

Bando alle ciancie. Compilo tutto il questionario e lo invio. Il sistema risponde ovviamente con la probabilità di possibilità di far parte di tale associazione. Il risultato era buono... tanto che la mia autostima era ben che salita... ma quando ho visto il tempo limite per rispondere mentre io ci avevo impiegato il doppio... bè un po' mi ero scoraggiata...

Ripensai di nuovo a come funzionava la valutazione e ho capito subito che si trattava di un javascript... molto probabilmente risiedeva anche sulla pagina stessa.

Ho voluto controllare... volevo sapere quali risposte avevo sbagliato. Il test è caricato in un frame. Poco male... quando hai beccato l'indirizzo del frame e lo carichi in una pagina nuova... è presto fatto! Caricato il test in una nuova pagina mi guardo il codice sorgente... e.... magia! Trovo tutte le risposte giuste! Ma ga senso?!?!?!?

if (document.IQtest.q1.value.toUpperCase()=="M") {sc++;}
if (document.IQtest.q2.value && eval(document.IQtest.q2.value)==15) {sc++;}
if (document.IQtest.q3.value && eval(document.IQtest.q3.value)==8) {sc++;}
if (document.IQtest.q4.value && eval(document.IQtest.q4.value)==6) {sc++;}
if (document.IQtest.q5.value && eval(document.IQtest.q5.value)==5) {sc++;}
if (document.IQtest.q6.value && eval(document.IQtest.q6.value)==4) {sc++;}
if (document.IQtest.q7.value && eval(document.IQtest.q7.value)==1) {sc++;}
if (document.IQtest.q8.value && eval(document.IQtest.q8.value)==2) {sc++;}

if (document.IQtest.q9[2].checked==true) {sc++;}
if (document.IQtest.q10[1].checked==true) {sc++;}
if (document.IQtest.q11[3].checked==true) {sc++;}
if (document.IQtest.q12[3].checked==true) {sc++;}
if (document.IQtest.q13[3].checked==true) {sc++;}
if (document.IQtest.q14[2].checked==true) {sc++;}
if (document.IQtest.q15[2].checked==true) {sc++;}
if (document.IQtest.q16[3].checked==true) {sc++;}
if (document.IQtest.q17[1].checked==true) {sc++;}
if (document.IQtest.q18[0].checked==true) {sc++;}

Questa è solo una porzione di codice che indica quale sia la risposta esatta.
Ora, so che quel test preliminare non ha nessun significato e importanza... però... dico io... non sarebbe stato tanto complicato mettere in un file incluso in una funzione richiamata dal form... mi sembra un comportamento più serio e all'"altezza" della situazione :)
Chiamatemi pure beta tester!! ahahahahahha
Dai... almeno oggi un po' di autostima ci vuole!

ah... stavo dimenticando... ecco il link al test:

link
per il resto il sito è fatto in Joomla... mi sembra sia stato rinnovato recentemente... non è male... a me piacciono molto le barzellette!!!

VN:F [1.9.15_1155]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.15_1155]
Rating: 0 (from 0 votes)
Print Print
12ago/090

12-08-2009

Print Print

Fiiiiiiigo.... praticamente da oggi romperò maggiormente le scatole a tutti con le mie notizie e cavolate varie!!!

Ho scoperto sto plugin di WordPress che si chiama Facebook Connector ed è una meraviglia. Praticamente non farò altro che aggiornare il mio blog e la notizia verrà automaticamente mandata a Facebook! E' veramente una gran cosa... perchè non ho mai avuto il tempo di aggiornare Faccia di Libro... nè la voglia!

E ora lo posso fare!

Meraviglioso!

VN:F [1.9.15_1155]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.15_1155]
Rating: 0 (from 0 votes)
Print Print
6ago/090

Bene,

Print Print

a quanto sembra dovrei aver risolto i problemi di lentenza del mio sito. Da quando, infatti, l'ho caricato nell'hosting remoto l'ho trovato sempre piuttosto lento.... soprattutto per quanto riguardava la connessione al db. Finalmente oggi ho trovato un articolo, cercando la soluzione ad un altro problema, che parlava proprio di questo. E ho scoperto che esisteva già pronto il plugin che mi serviva. Si chiama WP Super Cache. Questo plug in non fa altro che trasformare i vostri articoli in pagine statiche, senza che voi ve ne accorgiate. Sostanzialmente, il navigatore... invece di scaricare delle pagine dinamiche con relativa connessione al db... si scarica nel proprio client la stessa pagina in html. Nessuna connessione al momento della visita, quindi, al db. Quindi nessun rallentamento!

Bene... ottima scoperta.

L'unico rallentamento che ho notato è alla prima apertura di pagina dopo il caricamento di un nuovo articolo o notizia. A quanto pare, posso dedurre, che esiste un controllo di versione. Se gli articoli non sono cambiati va a prendere la pagina in html... altrimenti la ricostruisce.

VN:F [1.9.15_1155]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.15_1155]
Rating: 0 (from 0 votes)
Print Print
21mar/090

idea!

Print Print

Le idee più importanti a me vengono nei  momenti più impensabili. Oggi mentre lavavo i piatti ripensavo alla storia dei referal, quando improvvisamente... la lampadina si accende.

Chi si imbarcherà a leggere questo articolo penserà che abbia un'idea riguardante i referal. E qui si sbaglia di grosso.

Avevo creato tempo fa un sistema che permetteva agli amministratori di un sito di tradurre in infinite lingue il contenuto di un portale di annunci economici in internet attraverso data base,  con l'unico e non banale scopo di sollevare gli admin dall'impegno di conoscere il codice e di non prestare attenzione alla chiusura di apici o di punti e virgola che in alcuni ambienti è indispensabile per non rischiare di rendere instabile o addirittura non funzionante un sito.

Ma si sa... impegnare un data base in questo modo significa renderlo lento in accesso e in scrittura in quanto impegnato in altro.

Oggi l'illuminazione. Perchè non implementare il sistema che ho da poco messo in piedi per la creazione di un menù drop down attraverso sì l'uso di un data base ma anche usando il fantastico xml?

Una volta al giorno mi creo (o meglio il sito si creerà) l'xml che gestirà le traduzioni nelle varie lingue, magari in file divisi per lingua (sempre con lo scopo di snellire la navigazione) mentre le varie etichette del sito andranno a richiamare direttamente xml.

Tutto sta a capire cosa succede nel momento della creazione del file, se nello stesso momento un utente visita il  sito.

VN:F [1.9.15_1155]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.15_1155]
Rating: 0 (from 0 votes)
Print Print
7mar/090

Sono contenta..

Print Print

oggi ho sistemato un'annosa questione a proposito di un menu su un sito internet che fino a un anno fa si creava dinamicamente ad ogni caricamento di pagina. Essendo una query non del tutto snella comportava parecchio lavoro per il server web. Si era deciso di passare a un framework chiamato xajax. Ma nonostante tutto a Firefox quesa modifica non andava giù e troppe volte un combo creato on the fly con Firefox non funzionava perfettamente. Considerando il fatto che un quarto dei navigatori del sito in questione usano tale client è stata presa in considerazione l'idea di cambiare strumento.
Per prima cosa ho trovato un menù abbastanza carino con animazione Javascript e l'ho applicato alla query che estraeva i suoi elementi. Il problema era quella query... che avviata ad ogni caricamento di pagina sarebbe stata un po' impegnativa per il web server, sapendo che l'affluenza a tale sito è innumerevole.
Così durante una lezione del corso ajax ho avuto modo di conoscere le Api di XMLHTTP. Al momento pensai facessero al caso mio. Pagina html semplice che richiamava il JS che andava a leggere il contenuto del file XML e a ricreare i nodi del menù. La grande difficoltà trovata in questo caso (oltre capire che in questo modo XML non doveva contenere caratteri speciali) è stata l'applicazione dell'animazione JS. Purtroppo sembrava che il file html fosse su un altro  "livello" del menù creato e non riuscisse a comunicargli eventuali inclusioni di codice. Dall'altra parte nemmeno il file JS che andava tramite XMLHTTP a creare il menù riusciva a ricreare l'animazione... nemmeno includendone il codice. Questa strada fu abbandonata subito a causa della irrintracciabilità del menù da parte dei motori di ricerca. L'unica altra strada che conoscevo io era la funzione Fopen di php che poteva leggere il contenuto di un file e trasmetterlo a video, ma sapevo anche che se troppi utenti vanno a leggere tale file ci sarebbero stati durante la navigazione al sito dei rallentamenti anche molto sostanziosi.
Mi serviva quindi un comando una funzione... un processo che mi permettesse di scaricare il file xml sul client navigante e poi venisse letto e interpretato dallo stesso client (conoscendo JS so che lo fa).
Effettuando delle ricerche in internet però ho trovato il miracolo.
Php incarna una libreria chiamata SimpleXML con la quale si possono eseguire le operazioni basi sul file xml senza diventar matti.
Leggere file XML
Il primo esempio che andrò ad illustrare si propone di leggere un file XML e restituire in output il valore di alcuni attributi ed il contenuto di alcuni elementi testuali. Il file XML d'esempio sarà il seguente:

primoPoniamoci come obiettivo quello di estrarre un elenco di tutti gli articoli:

secondo

Eseguendo lo script otteniamo un output corretto estratto con facilità dal file XML. Utilizzando la funzione simplexml_load_file (segnata in rosso nel codice) carichiamo all'interno di un oggetto SimpleXML il contenuto di un file passato come argomento (in verde nel codice). l'argomento può essere sia un file che risiede sulla macchina locale come un file che risiede in remoto su un altro server. L'oggetto restituito rappresenta la root del nostro documento XML: espone una proprietà per ogni nodo figlio che può essere un array (nel caso ci siano più figli omonimi) o un elemento singolo e permette di accedere agli attributi utilizzando la sintassi che normalmente viene utilizzata per accedere ad elementi specifici di un array.

In questo modo l'iterazione è veramente semplice: per ottenere lo stesso risultato usando DOM o SAX avremmo dovuto operare con script più intricati o più lunghi da scrivere. Tutta questa semplicità va a discapito di un po' di funzionalità che, al momento, non sono contemplate all'interno della libreria SimpleXML: i commenti e le processing instructions sono saltate e non vengono salvate durante il parsing del documento. Dato che comunque SimpleXML si propone come una libreria per gestire in modo semplice documenti XML semplici, queste non sono mancanze che attualmente complicano il modo di operare.

VN:F [1.9.15_1155]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.15_1155]
Rating: 0 (from 0 votes)
Print Print
   

© 2009-2012 NoNiente.com All Rights Reserved -- Copyright notice by Blog Copyright