Hello,

Ceci est mon 1er message sur ce forum, qui est vraiment bien foutu ^^

J'essaye pour la première fois à me mettre au fameux objet xmlhttprequest. Le problème c'est que le script bloc quand je lance la méthode OPEN (les alertes qui suivent ne s'affichent pas...).

Le but du code ci-dessous est de lancer un script qui se trouve sur un autre serveur (mon site étant dispatché entre plusieurs serveurs :/)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
 
// Fonction d'envoi de la requette http via l'objet XMLHttpRequest
function getHTTPObject() {
  var xmlhttp;
  /*@cc_on
  @if (@_jscript_version >= 5)
    try {
      xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
      } catch (e) {
      try {
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (E) {
        xmlhttp = false;
        }
      }
  @else
  xmlhttp = false;
  @end @*/
  if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
    try {
      xmlhttp = new XMLHttpRequest();
      } catch (e) {
      xmlhttp = false;
      }
	  alert('gethttp');
  }
  return xmlhttp;
  }
 
 
// Handle traitant le resultat de la requette.
 
function handleHttpResponse() {
 
	if (http.readyState == 4) {
 
		//alert (http.responseText);
		document.getElementById('reponse').innerHTML=http.responseText;
 
	} 
	else
    {
	document.getElementById('reponse').innerHTML="en cours";
    } 
 
}
 
 
// Creation d'un objet httpRequest en memoire.
var http = getHTTPObject();
if (!http) {
	alert('http not ok');
}
var url = "http://ipserveur2/scriptexterne.php";
 
alert(http.status); // affiche 0, logique
http.open("GET", url, true);
//a partir d'ici rien ne s'execute
alert(http.status);
 
http.onreadystatechange = handleHttpResponse;
http.send(null);
alert('ici');
Vous voyez l'erreur ? merci !

(je fais mes tests sur Firefox)