Newsgroup: it.comp.lang.javascript
Titolo: xmlHttpRequest e Firefox

Ciao a tutti,
mi succede una cosa per me stranissima che non riesco a capire.
Nel mio sito ho due select, la prima delle provincie e la seconda dei
comuni associate alle provincie.
All'evento onchange della prima select effettuo una chiamata
xmlhttprequest che richiama una pagina asp che prende la lista dei
comuni e li inserisce nella seconda select.
Tutto molto semplice e cristallino.
MA solo se la console di firebug è installata e attiva
Se non è installata o non è attiva per quel sito, se ne strafrega
totalmente.
Un aiutino??

Per maggior completezza dell'analisi.
Il tutto funziona correttamente su:
IE6/7
Opera 9.27
Safari 3.1.1
Non funziona su:
Firefox 2.0.0.14

 Un aiutino??
Tale problema, si verifica a prescindere dalla versione di Firefox?
L'error console di Firefox ti dice qualcosa? Non è che hai inserito
del codice specifico per interagire con Firebug e in sua assenza va
in errore? Hai riscontrato tale anomalia solo sulla tua macchina, o
anche su altre (potresti avere un'installazione fallace)?
Alternativamente, posta l'url della pagina che ci diamo un'occhiata
e vediamo cosa c'è che non va.
-- 
~  "FINARMENTE  LI SFRATTATI AVRANNO UN TETTO SULLA  TESTA!
 ...però tirato ammodino, un  tegolo pe' vorta.." (Il vernacoliere)

 Alternativamente, posta l'url della pagina che ci diamo un'occhiata e vediamo cosa c'è che non va.
http:\\
www.caccialtesoronline.it
\iscrizione.asp
Grazie mille

 Un aiutino??
se puň servire: vedo che chiamando direttamente
 
http://www.caccialtesoronline.it/CheckData.asp?id=4&Provincia=PA&citta=
restituisce una select senza la chiusura della select.
p.s. sistemerei urgentemente i problemi di sql-injection, visto che il path
č visibile a tutti; es.
http://www.caccialtesoronline.it/CheckData.asp?id=4&Provincia=%27&citta=
(non ho osato provare tecniche piů invasive tipo ;drop database xxx o
simili)
-- 
"That until there is no longer first class
And second class citizens of any nation
Until the colour of a man's skin
Is of no more significance than the colour of his eyes
Me say war"
B.M.

 simili)
grazie della dritta

 sbaglio?
boh, non conosco questo firebug e quindi non sò dire cosa fa e cosa
eventualmente cambia
-- 
"e mai che mi sia venuto in mente
 di essere più ubriaco di voi
 di essere molto più ubriaco di voi"
									  F.D.A.

 eventualmente cambia
grazie ugualmente
cercherò di approfondire il problema

 cercherò di approfondire il problema
anche perché ho provato ad installarlo, ma mi dice che non è compatibile
firefox 3 ... la beta, invece, mi dà errore di installazione.
-- 
"Voi abili a tenere sempre un piede qua e uno là
 avrete un avvenire certo in questo mondo qua
 però la dignità
 dove l'avete persa?"
									    V.R.

Ho sistemato la chiusura della select
Ma continua a non funzionare
E onestamente sto perdendo le speranze.

 http:\\
www.caccialtesoronline.it
\iscrizione.asp
Il punto incriminato è la funzione selectCitta(), e nello specifico:
	xmlHttpComuni.onreadystatechange=stateChanged4;
	xmlHttpComuni.open("GET",url,false);
	xmlHttpComuni.send(null);
Primo, l'event handler onreadystatechange devi metterlo DOPO l'open di
una request, altrimenti rischi su alcuni browser che ti venga ignorato
(ad esempio su IE). Ma l'errore che hai fatto è nel metodo open(): Hai
impostato il parametro per la chiamata asincrona a "false"; e così vai
a fare una chiamata *sincrona*: e se la chiamata è sincrona, non tutti
i browser richiamano la callback impostata sull'onreadystatechange.
Riassumendo:
	xmlHttpComuni.open("GET",url,true);
	xmlHttpComuni.onreadystatechange=stateChanged4;
	xmlHttpComuni.send(null);
dovrebbe andare.
P.S.
Ti consiglio una lettura sullo sviluppo tramite XmlHttpRequest, perché
una funzione del genere:
function stateChanged4(){ 
	if (xmlHttpComuni.readyState==4){
		document.getElementById("listaComuni").innerHTML =
xmlHttpComuni.responseText;
	}
}
è del tutto insufficiente a gestire la risposta del server. Ad esempio
ignori lo status di risposta: dovresti verificare che sia almeno 200.
Inoltre, come più volte è stato discusso sul NG, dovresti anche andare
a controllare che il server abbia effettivamente inviato qualcosa.
-- 
~ Il lavoro è quel lasso di tempo che intercorre tra una pausa caffè e
l'altra.

 wrote:

Mi rendo conto che ho ancora troppe cose da imparare
Non so come ringraziarti per il tuo aiuto

 firefox 3 ... la beta, invece, mi dà errore di installazione.
Firebug ancora non e' disponibile per FF3 AFAIK
-- 
Quello che io penso sia utile è di avere il governo il più vicino
possibile a me e lo stato, se proprio non se ne può fare a meno,
il più lontano possibile dai coglioni. (Fabrizio De André)

 simili)
oppure nome utente "admin' OR '1' = '1"
dove la query e':
"SELECT * FROM utenti WHERE nome_utente = '{$nome_utente}'"
;)
a spulciarsi i log del web server ci si fa una cultura sugli innumerevoli
tentativi di attacco possibili
sempre fare l'escape dei parametri passati alle query SQL!
Delegare questo compito a una funzione prepare() di libreria scritta da
qualcuno piu' saggio se non si e' in grado di arginare le possibili
vulnerabilita'!


 Firebug ancora non e' disponibile per FF3 AFAIK
Io l'ho installato assieme a FF3 l'altro giorno: dovete cercare la
beta della 1.2 (almeno, io ho quella e va).
-- 
~ Un computer e'  fondamentalmente stupido. Non fa cio'  che vuoi che
faccia,  ma cio' che gli  dici di fare.

 vulnerabilita'!
Oppure, suddividere bene i layer di astrazione anche per la
programmazione sui DB e fare delle SP ammodino, limitandosi
da codice a invocare quelle. :)
-- 
~ "Il semble que la perfection soit atteinte non quand il n'ya plus
rien à ajouter, mais quand il n'ya plus rien à retrancher"
(A. de Saint-Exupéry)

 Non so come ringraziarti per il tuo aiuto
Di niente, ma la prossima volta attento al quoting. Non è necessario
che riporti il messaggio per intero nella risposta. :)
-- 
~ La donna è un male, ma un male necessario.
(Aulo Gellio)


C'e' una leggera incoerenza di fondo


 C'e' una leggera incoerenza di fondo
..su web? E dove sta la novità. :)
P.S.
Ricevuta l'e-mail?
-- 
~ "E' uno sterminio.. Non è una guerra più di quanto lo potrebbe
essere tra un uomo e un verme... O tra draghi e lupi..
O tra uomini a cavallo di draghi che lanciano lupi ai vermi!"

 Ricevuta l'e-mail?
Mi spiace che non ti sia stato utile, mi sembra un'occasione molto buona in
una compagnia giovane sulla bocca di tutti e in massiccia espansione.
Quanto a quello che faro' io... per ora non posso anticipare niente. A cose
fatte te ne parlero' in pvt ;)


 fatte te ne parlero' in pvt ;)
Beh, credevo che le cose fossero già state fatte, da quello che avevi
scritto in mail. :) In tal caso, attenderò. :)
-- 
~ "When you have eliminated the impossible, whatever remains, however
improbable, must be the truth." (S.H.)

 scritto in mail. :) In tal caso, attenderò. :)
Sono in via di conclusione, ma per mia natura non parlo delle cose non
ancora a regime :)
Ma tu hai un profilo linkedin ?


 Ma tu hai un profilo linkedin ?
No, dovrei? Del resto ce l'ha pure Rocco Siffredi.. :)
-- 
"Se c'è qualcosa di più importante del mio ego su questa nave,
la voglio catturata e fucilata."