Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1815 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Probleme avec AJAX et internet explorer

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Probleme avec AJAX et internet explorer

n°1384955
cooleric
Posté le 10-06-2006 à 01:03:39  profilanswer
 

J'ai le code javascript suivant :


function executer(form) {
    var xhr_object = null;
    var texteRequete = document.getElementById('requete').value;
    if (window.XMLHttpRequest) { // Mozilla, Safari,...
     xhr_object = new XMLHttpRequest();
     if (xhr_object.overrideMimeType) {
      xhr_object.overrideMimeType('text/xml');
     }
    } else if (window.ActiveXObject) { // IE
      try {
       xhr_object = new ActiveXObject("Msxml2.XMLHTTP" );
      } catch (e) {
       try {
        xhr_object = new ActiveXObject("Microsoft.XMLHTTP" );
       } catch (e) {}
      }
    }
     
    xhr_object.open("POST", "executionRequete.php", true);
    xhr_object.setRequestHeader("Content-Type", "application/x-www-form-urlencoded" );
    xhr_object.onreadystatechange = function anonymous() {
     if(xhr_object.readyState == 4) {
      var xmldoc = xhr_object.responseXML;
      document.getElementById('reponse').innerHTML = "";
      var conteneur = xmldoc.getElementById('contenu');
      document.getElementById('reponse').appendChild (conteneur);
       
      document.getElementById('reponse').style.display = 'block';
     }
    };
    xhr_object.send("requete="+texteRequete);
   }


 
Qui fait donc appel au fichier php suivant :


<?php
$sql_serveur="localhost";
$sql_user="***";
$sql_passwd="***";
$sql_bdd="cheerup";
$db_link = mysql_connect($sql_serveur,$sql_user,$sql_passwd);
$db_selected = mysql_select_db($sql_bdd,$db_link);
if (!$db_selected) {
 die ('Impossible d\'utiliser la base : ' . mysql_error());
}
 
$sql_bdd="cheerup";
$requete = ((isset($_GET['requete']))?$_GET['requete']:((isset($_POST['requete']))?$_POST['requete']:null));
 
header("Content-type: text/xml" );  
echo("<?xml version=\"1.0\" encoding=\"iso-8859-1\" ?>\n" );
echo("<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.1//EN\" \"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd\">\n" );
echo("<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"fr\">\n" );
echo("<head>\n" );
echo("<title>R&eacute;ponse &agrave; la requ&egrave;te SQL</title>\n" );
echo("<meta http-equiv=\"Content-Type\" content=\"application/xhtml+xml; charset=iso-8859-1\"/>\n" );
echo("<meta name=\"Cache-Control\" content=\"no-cache, must-revalidate\"/>\n</head>\n" );
if ($requete == null) {
 echo("<body><div id=\"contenu\"><p>Demande invalide</p></div></body>\n</html>" );
 exit();
}
$reponse = mysql_query($requete);
 
if ($reponse !=false) {
 echo("<body>" );
 echo("<p>Voici le r&eacute;sultat de votre requ&egrave;te :</p>" );
 echo("<div id=\"contenu\"><table border=\"1\"><tbody>" );
 while ($row = mysql_fetch_row($reponse)) {
  echo("<tr>" );
  foreach ($row as $item) {
   echo ("<td>".($item?htmlentities($item):"&nbsp;" )."</td>" );
  }
  echo("</tr>" );
 }
 echo("</tbody></table></div>" );
 echo("</body>" );
}
else {
 echo("<body><div id=\"contenu\"><p>".mysql_error()."</p></div></body>" );
}
 
echo ("</html>" );
?>
 


 
Sous Firefox aucun probleme, mon code recupere ce que je veux dans le fichier xhtml généré et me laffiche dans le div "reponse" de mon document.
Sous Internet Explorer ca bloque. la fonction responseXML ne provoque pas d'erreur mais il me charge un document entierement vide ce qui fait que la ligne :

var conteneur = xmldoc.getElementById('contenu');


provoque un arret d'execution du script...
 
 
QQn pourrait-il m'aider? ca fait des heures que je bloque sur ce probleme...
 
Eric

mood
Publicité
Posté le 10-06-2006 à 01:03:39  profilanswer
 

n°1414367
goupil33
Posté le 27-07-2006 à 11:43:33  profilanswer
 

J'ai le même problème que cooleric... Si quelqu'un a une solution ça serait sympa !!! merci

n°1414400
Hermes le ​Messager
Breton Quiétiste
Posté le 27-07-2006 à 12:02:23  profilanswer
 

C'est quoi ça ?
 
$requete = ((isset($_GET['requete']))?$_GET['requete']:((isset($_POST['requete']))?$_POST['requete']:null));
 
Tu récupères indifféremment en GET ou en POST ? ya $_REQUEST pour ça.
 
Ensuite, non, je ne vois pas d'erreur particulière... faudrait que je teste le code.
 
Un dernier détail : c'est quoi ce titre ? C'est pas du AJAX ça, tu récupères pas du XML, donc c'est juste XMLHttpRequest.

n°1414419
anapajari
s/travail/glanding on hfr/gs;
Posté le 27-07-2006 à 12:21:09  profilanswer
 

Inverse ces deux lignes pour voir

Code :
  1. ActiveXObject("Microsoft.XMLHTTP" );


Code :
  1. ActiveXObject("Msxml2.XMLHTTP" );


 

Hermes le Messager a écrit :

Un dernier détail : c'est quoi ce titre ? C'est pas du AJAX ça, tu récupères pas du XML, donc c'est juste XMLHttpRequest.

[:grinking]  
 
 

n°1414503
betsamee
Asterisk Zeperyl
Posté le 27-07-2006 à 13:53:31  profilanswer
 

Hermes le Messager a écrit :

C'est quoi ça ?
 
$requete = ((isset($_GET['requete']))?$_GET['requete']:((isset($_POST['requete']))?$_POST['requete']:null));
 
Tu récupères indifféremment en GET ou en POST ? ya $_REQUEST pour ça.
 
Ensuite, non, je ne vois pas d'erreur particulière... faudrait que je teste le code.
 
Un dernier détail : c'est quoi ce titre ? C'est pas du AJAX ça, tu récupères pas du XML, donc c'est juste XMLHttpRequest.


du AJA  :o  (on reste dans les clubs de foot)

n°1414510
Hermes le ​Messager
Breton Quiétiste
Posté le 27-07-2006 à 14:00:54  profilanswer
 

C'est juste du javascript avec xmlhttprequest... [:spamafote]
 
c'est n'importe quoi de prétendre faire de l'ajax quand on ne manipule rien en XML...

n°1414617
anapajari
s/travail/glanding on hfr/gs;
Posté le 27-07-2006 à 15:27:31  profilanswer
 

Hermes le Messager a écrit :

C'est juste du javascript avec xmlhttprequest... [:spamafote]
 
c'est n'importe quoi de prétendre faire de l'ajax quand on ne manipule rien en XML...


k :o, J'ai un moment cru que tu faisais référence à un topic pas si vieux où je quote:

masklinn a écrit :

si AJAX désignait potentiellement et originellement (ici) la stack de technos utilisées, il n'est plus aujourd'hui qu'un buzzword désignant tout et n'importe quoi (et globalement le pattern de modifier dynamiquement une page avec communication au serveur... ou pas)
 
Cadeau, lecture pour toi


Message édité par anapajari le 27-07-2006 à 15:28:08
n°1420461
goupil33
Posté le 05-08-2006 à 16:39:59  profilanswer
 

Pour Hermes, pas forcément besoin d'XML pour AJAX... Relis la définition de Wikipedia, et si t'es pas d'accord tu peux la changer, et fait de même avec les centaines de pages web qui donnent la même définition !
 

Hermes le Messager a écrit :

C'est juste du javascript avec xmlhttprequest... [:spamafote]
 
c'est n'importe quoi de prétendre faire de l'ajax quand on ne manipule rien en XML...


 
Et juste pour en rajouter une couche, c'est quoi les 3 premières lettres de xmlhttprequest ?

n°1420492
Martius
il/lui
Posté le 05-08-2006 à 17:35:01  profilanswer
 

goupil33 a écrit :

Pour Hermes, pas forcément besoin d'XML pour AJAX...


C'est sur que dans Asynchronous Javascript And XML, on utilise pas forcement de XML...


---------------
Martin

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Probleme avec AJAX et internet explorer

 

Sujets relatifs
Problème d'accès à une base Access via VB6 (erreur 13)problème avec DialogBox
[PHP] Problème de checkbox dans une sessionURGENT probleme
probleme avec des variables et fwriteProbleme de droits création fichier
[C++]Probleme Logiciel Réseauprobleme mise a jour d'un champ
Plus de sujets relatifs à : Probleme avec AJAX et internet explorer


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR