Bonjour,

Je suis d�butant avec AJAX...
Voila mon probl�me, lorsque je fais un appel � ce code php en AJAX tous va bien avec IE mais je n'ai pas de r�ponse avec FF
Code php : 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
<?php
header('Content-type: text/html; charset=iso-8859-1');
header('Cache-Control: no-cache');
// echo '<err>';
$profondeur = $_GET['profondeur'];
$duree = $_GET['duree'] * 60; // duree convertie en seconde
//ici les parametres pour la connexion
$host="sql.free.fr";
$base="*********";
$passe="********";
//on effectue la connexion
$link = mysql_connect("$host","$base","$passe") or die ("Echec de connexion à la base") ;
//Selection de la base de données qui porte le meme nom que votre login
$select_base=@mysql_selectdb("$base") or die ("Echec de selection de la base");
// Recherche de la profondeur
$sql = "SELECT MIN(Profondeur) As Profondeur FROM T_TABLE_PLONGEE WHERE Profondeur >= " . $profondeur;
$result = mysql_query($sql) or die("Query failed : " . $sql);
$line = mysql_fetch_assoc($result);
// Liberation des resultats
mysql_free_result($result);
$profondeurTable = $line["Profondeur"];
if ($profondeurTable == "") {
$err = "Profondeur hors table";
}
// Recherche de la duree
$sql = "SELECT MIN(Duree) AS Duree FROM T_TABLE_PLONGEE WHERE Duree >= SEC_TO_TIME(" . $duree . ") AND Profondeur = " . $profondeurTable ;
$result = mysql_query($sql) or die("Query failed : " . $sql);
$line = mysql_fetch_assoc($result);
$dureeTable = $line["Duree"];
// Liberation des resultats
mysql_free_result($result);
if ($dureeTable == "") {
$err = "Hors table";
}
$sql = "SELECT Palier3m, Palier6m, Palier9m, Palier12m, DTR, GroupePlongee
FROM T_TABLE_PLONGEE
WHERE Profondeur = " . $profondeurTable . " AND Duree = '" . $dureeTable . "'";
$result = mysql_query($sql) or die("Query failed : " . $sql);
$line = mysql_fetch_assoc($result);
// Liberation des resultats
mysql_free_result($result);
// Fermeture de la connexion
mysql_close($link);
echo $err . '-' . $profondeurTable . '-' . $dureeTable . '-' . $line["Palier3m"] . '-' .
$line["Palier6m"] . '-' . $line["Palier9m"] . '-' . $line["Palier12m"] .
'-' . $line["DTR"] . '-' . $line["GroupePlongee"];
?>

Sauf en mode d�bug ou �a marche aussi avec FF.
Le code ci dessous permet de faire appel a cette page :



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
 function makeRequest(url) {
var httpRequest = false;
if (window.XMLHttpRequest) { // Mozilla, Safari,...
httpRequest = new XMLHttpRequest();
if (httpRequest.overrideMimeType) {
httpRequest.overrideMimeType('text/xml');
}
}
else if (window.ActiveXObject) { // IE
try {
httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
try {
httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e) {}
}
}
if (!httpRequest) {
alert('Abandon :( Impossible de créer une instance XMLHTTP');
return false;
}
httpRequest.onreadystatechange = function() { alertContents(httpRequest); };
httpRequest.open('GET', url, false);
httpRequest.send(null);
}
 
function alertContents(httpRequest) {
if (httpRequest.readyState == 4) {
if (httpRequest.status == 200) {
var tmp = httpRequest.responseText.split("-");
if(typeof(tmp[1]) != "undefined") {
gERRTABLE = tmp[0];
gPROFONDEURTABLE = tmp[1];
gDUREETABLE = tmp[2];
gPALIERTABLE3M = tmp[3];
gPALIERTABLE6M = tmp[4];
gPALIERTABLE9M = tmp[5];
gPALIERTABLE12M = tmp[6];
gDTRTABLE = tmp[7];
gGPSTABLE = tmp[8];
}
} else {
alert('Un problème est survenu avec la requête.');
}
}
}

Petite sp�cificit� : httpRequest.open('GET', url, false); le param�tre est volontairement mis � false.

J'ai l'impression que FF ne refait pas le requ�te (pb de mise en cache ?)

Je pense que la solution doit �tre trivial mais moi je coince compl�tement...

Merci de votre aide.
Cyril