Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Javascript - ajax connessioni multiple asincrone
Forum - Javascript - ajax connessioni multiple asincrone

Avatar
sottaceto (Normal User)
Newbie


Messaggi: 4
Iscritto: 21/10/2012

Segnala al moderatore
Postato alle 23:43
Lunedì, 29/10/2012
Salve a tutti!

Non capisco perchè questo codice mi richiama correttamente solo una funzione per volta fra

xmlAvvisiPost(strURL);
xmlScacchieraPost(strURL);
xmlMossePost(strURL);

Se le lascio tutte e tre i dati richiesti spesso non vanno a finire nei DIV giusti.

le suddette funzioni sono analoghe a quella scritta sotto ma non richiamano altre funzioni a loro volta e non hanno il "setTimeout".

può essere un problema di connessioni multiple?

Qualcuno sa aiutarmi?

Grazie!

Codice sorgente - presumibilmente Php

  1. function xmlTurnPost(strURL)
  2. {
  3. var xmlHttpReq = false; //Inizializzo l'oggetto xmlHttpReq
  4. var self = this;
  5. self.xmlHttpReq = new XMLHttpRequest()
  6. self.xmlHttpReq.open('POST', strURL, true);
  7. self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
  8. self.xmlHttpReq.send('yourTurn=1');                    
  9. self.xmlHttpReq.onreadystatechange = function()
  10. {
  11.         if (self.xmlHttpReq.readyState == 4) //Se lo stato è completo
  12.         {      
  13.                 if (self.xmlHttpReq.responseText != yourTurn)
  14.                         {
  15.                                 xmlAvvisiPost(strURL);
  16.                                 xmlScacchieraPost(strURL);
  17.                                 xmlMossePost(strURL);
  18.                                 yourTurn=self.xmlHttpReq.responseText;
  19.                         }
  20.                 setTimeout("xmlTurnPost('"+strURL+"')",5*1000);
  21.         }
  22. }
  23. }



poi nel c'è l'istruzione nel body:

Codice sorgente - presumibilmente Javascript

  1. <body onload= "xmlTurnPost('aggiornachat.php');">


PM
Avatar
Mte90 (Member)
Guru


Messaggi: 1144
Iscritto: 25/03/2008

Up
0
Down
V
Segnala al moderatore
Postato alle 11:27
Martedì, 30/10/2012
senza il codice delle altre funzioni è difficile capire il problema...

PM
Avatar
HeDo (Founder Member)
Guru^2


Messaggi: 2765
Iscritto: 21/09/2007

Up
0
Down
V
Segnala al moderatore
Postato alle 8:11
Mercoledì, 31/10/2012

ma usare jquery?

PM
Avatar
bazzilla (Normal User)
Newbie


Messaggi: 2
Iscritto: 26/11/2008

Up
0
Down
V
Segnala al moderatore
Postato alle 9:11
Mercoledì, 31/10/2012
Testo quotato

Postato originariamente da HeDo:


ma usare jquery?



Perchè scusa? Non penso che riscrivendo un codice con jquery si risolva un problema a prescindere dalla sua natura...

Così "a spanne" direi che è un problema di closure, ma concordo con il fatto che è necessario tutto il codice per capire cosa non funziona.

PM
Avatar
Roby94 (Member)
Guru


Messaggi: 1170
Iscritto: 28/12/2009

Up
0
Down
V
Segnala al moderatore
Postato alle 17:16
Mercoledì, 31/10/2012
Testo quotato

Postato originariamente da bazzilla:

Testo quotato

Postato originariamente da HeDo:


ma usare jquery?



Perchè scusa? Non penso che riscrivendo un codice con jquery si risolva un problema a prescindere dalla sua natura...


Forse non risolve ma ormai grandissima parte dei siti implementa jQuery, ci sarà un motivo. Poi le richieste ajax con jQuery sono gestite molto meglio solo da parte del framework.

PM
Avatar
bazzilla (Normal User)
Newbie


Messaggi: 2
Iscritto: 26/11/2008

Up
0
Down
V
Segnala al moderatore
Postato alle 9:57
Martedì, 06/11/2012
Testo quotato

Postato originariamente da Roby94:


Forse non risolve ma ormai grandissima parte dei siti implementa jQuery, ci sarà un motivo.



Credo che il motivo trainante sia la grande disponibilità di script e plug-in in JQuery già pronti...ma è opinione personale.

Testo quotato

Postato originariamente da Roby94:


Poi le richieste ajax con jQuery sono gestite molto meglio solo da parte del framework.



Qui è ignoranza mia che non uso mai JQuery, ma cosa intendi per "sono gestite molto meglio"? Dietro le API AJAX di JQuery non c'è sempre l'oggetto XMLHttpRequest?

si sui browser che lo supportano, sulle vecchie versioni di ie usa activex e così via per mantenere la compatibilità con i vecchi browser - Mte90 - 06/11/12 16:31
PM