Probleme avec AJAX et internet explorer - HTML/CSS - Programmation
Marsh Posté le 27-07-2006 à 11:43:33
J'ai le même problème que cooleric... Si quelqu'un a une solution ça serait sympa !!! merci
Marsh Posté le 27-07-2006 à 12:02:23
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.
Marsh Posté le 27-07-2006 à 12:21:09
Inverse ces deux lignes pour voir
Code :
|
Code :
|
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. |
Marsh Posté le 27-07-2006 à 13:53:31
Hermes le Messager a écrit : C'est quoi ça ? |
du AJA (on reste dans les clubs de foot)
Marsh Posté le 27-07-2006 à 14:00:54
C'est juste du javascript avec xmlhttprequest...
c'est n'importe quoi de prétendre faire de l'ajax quand on ne manipule rien en XML...
Marsh Posté le 27-07-2006 à 15:27:31
Hermes le Messager a écrit : C'est juste du javascript avec xmlhttprequest... |
k , 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) |
Marsh Posté le 05-08-2006 à 16:39:59
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... |
Et juste pour en rajouter une couche, c'est quoi les 3 premières lettres de xmlhttprequest ?
Marsh Posté le 05-08-2006 à 17:35:01
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...
Marsh Posté le 10-06-2006 à 01:03:39
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éponse à la requè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ésultat de votre requè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):" " )."</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