Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc
Comunitatea PHP Romania
 

Firefox afiseaza raspuns Ajax, Internet Explorer nu
Vezi mesajul original

 
       Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc -> AJAX
Subiectul anterior :: Subiectul următor  
Autor Mesaj
Amenthes



Data înscrierii: 12/Dec/2005
Mesaje: 620

Trimis: Dum Oct 29, 2006 3:16 am    Titlul subiectului: Firefox afiseaza raspuns Ajax, Internet Explorer nu  

Am o micutza aplicatie care face uz de Ajax. In Firefox si Opera merge aproape de minune, in Internet Explorer 6 merge al naibi de ciudat. Prima data cand fac cererea catre server, imi afiseaza raspunsul intr-un div insa afiseaza invizibil. Am reusit sa imi dau seama ca afiseaza asa prin alte metode. A doua oara cand incerc sa fac cererea(fara sa dau refresh la pagina) nu mai primeste nici un raspuns. I s-a mai intamplat cuiva asa ceva?

Uitati un link spre ciudatenia asta: http://www.amenthes.saveitfree.com/newsletter/main.php
Sus  
ExcalIbvr



Data înscrierii: 02/Mai/2004
Mesaje: 1107
Locație: Oradea

Trimis: Dum Oct 29, 2006 8:30 am    Titlul subiectului:  

Ce raspunde server-ul? Un text, o bucata de cod html, altceva? Pune niste cod.
Sus  
Amenthes



Data înscrierii: 12/Dec/2005
Mesaje: 620

Trimis: Dum Oct 29, 2006 3:59 pm    Titlul subiectului:  

Dupa ce am postat primul mesaj am incercat si varianta cu MySQL. Si aia face aproape la fel in Explorer. Codurile sursa sunt pe paginile urmatoare:

Varianta cu XML: http://www.amenthes.saveitfree.com/newsletterXML

Varianta cu MySQL: http://www.amenthes.saveitfree.com/newsletterMySQL

Ce am observat incercand sa gasec bug-ul prin niste alert()-uri e ca in varianta cu MySql, Explorer-ul nu mai ruleaza a doua oara functia ajax care citeste readyState-urile. E pusa intre comentarii o functie switch cu care am incercat asta.

Chiar nu-mi dau seama care e problema.
Sus  
agoia



Data înscrierii: 24/Ian/2007
Mesaje: 16

Trimis: Mie Ian 24, 2007 8:27 pm    Titlul subiectului:  

Amenthes, ai rezolvat ceva? Am exact aceeasi problema: prin AJAX scriu ceva intr-o tabela MySQL (raspunsul serverului nu ma intereseaza si nu-l captez); in IE6 functioneaza doar la primul click, la urmatoarele nu mai lucreaza; in Firefox merge perfect...
Sus  
johnutz



Data înscrierii: 20/Iul/2004
Mesaje: 956
Locație: Între scaun și tastatură

Trimis: Joi Ian 25, 2007 4:08 pm    Titlul subiectului:  

MSIE pastreaza in cache rezultatul request-urilor AJAX si nu mai face alte cereri apoi.
Ar trebui sa pui la inceputul scriptul care genereaza raspunsul ceva cam asa: Cod:    header( "Expires: Mon, 26 Jul 1997 05:00:00 GMT" );  // disable IE caching
   header( "Last-Modified: " . gmdate( "D, d M Y H:i:s" ) . "GMT" );
   header( "Cache-Control: no-cache, must-revalidate" );
   header( "Pragma: no-cache" );

//offtopic:
Sa-l omoare cineva pe Anpotard asta!
Sus  
agoia



Data înscrierii: 24/Ian/2007
Mesaje: 16

Trimis: Joi Ian 25, 2007 4:50 pm    Titlul subiectului:  

Multumesc johnutz! Cu prima ocazie voi pune codul tau la lucru (acum am un dead-line strans si nu prea pot experimenta).

Iata o sugestie pe care am primit-o de la cineva si care m-a rezolvat:

function sendRequest(method, address, vars, div_name) {
// Open PHP script for requests
div=div_name;
if (method=='get')
{ var forceGET = "&ceva="+ parseInt(Math.random()*999999999);
http.open(method, address+'?'+vars+forceGET);
http.onreadystatechange = function () {return false;};
http.send(null);
}
else
{ var forceGET = "&ceva="+ parseInt(Math.random()*999999999);
http.open(method, address);
http.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
http.onreadystatechange = function () {return false;};
http.send(vars+forceGET);
}
}

Dupa cum se vede, linia cu forceGET introduce un parametru aleatoriu care forteaza IE la un nou request la fiecare clic.

Salutari si inca o data multumiri!
Sus  
PHPRomania Bot
Bot Member


Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google
Trimis: Mie Dec 26, 2007 7:01 pm   Titlul subiectului: Ad  

Sus  
 
       Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc -> AJAX
Pagina 1 din 1


Powered by phpBB 2.0.22 © 2001, 2002 phpBB Group
Varianta în limba română: Romanian phpBB online community