[AJAX] Question sur le statut qui passe de 1,2,3,4 et puis 1
Bonsoir,
J'ai mis un alert comme ceci :
Code:
1 2
| alert(xhr2.readyState);
if(xhr2.readyState == 4 && (xhr2.status == 200 || xhr2.status == 0 ) ) |
Est-ce normal que j'obtienne :
1,2,3,4 et puis 1
C'est le dernier 1 qui m'intrigue.
MA liste déroulante ne se remplit pas en tout cas.
Voici mon code ajax :
Code:
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
| function getXhr()
{
var xhr = null;
if(window.XMLHttpRequest) // Firefox et autres
xhr = new XMLHttpRequest();
else if(window.ActiveXObject)
{ // Internet Explorer
try
{
xhr = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
}
else
{
xhr = false;
}
return xhr;
}
function fnctcategories(type)
{
var xhr3 = getXhr();
xhr3.onreadystatechange = function()
{
if(xhr3.readyState == 4 && (xhr3.status == 200 || xhr3.status == 0 ) )
{
alert('coolType');
leselect3 = xhr3.responseText;
document.getElementById('select_Nom_types').innerHTML = leselect3;
}
}
}
function fnctcours(cours)
{
var xhr2 = getXhr();
xhr2.onreadystatechange = function()
{
alert(xhr2.readyState);
if(xhr2.readyState == 4 && (xhr2.status == 200 || xhr2.status == 0 ) )
{
leselect2 = xhr2.responseText;
document.getElementById('select_Nom_types').innerHTML = leselect2;
//alert(leselect2);
fnctcategories(document.getElementById('select_Nom_types').value);
}
}
xhr2.open("POST","Scripts/ajaxTypes.php",true);
xhr2.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
alert(cours);
xhr2.send("MNEMONIC="+cours);
} |
et mon code PHP :
Code:
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
| <?php
session_start();
//print_r($_POST);
if(isset($_POST["MNEMONIC"]))
{
$conn = mysql_connect("localhost","root","mdp");
$db=mysql_select_db("pharma", $conn);
$res = "SELECT DISTINCT TYPE_DE_COURS FROM cours WHERE MNEMONIC IN (SELECT DISTINCT MNEMONIC FROM enseigner WHERE MATRICULE_PROF = '" . $_SESSION[Matricule] . "'AND MNEMONIC = '" .$_POST["MNEMONIC"]. "') AND NOM_ANNEE = '" . $_SESSION[ANNEE] . "'";
$res = mysql_query($res, $conn);
$nombre = mysql_num_rows($res);
while($row = mysql_fetch_assoc($res))
{
echo "<option value='".$row["TYPE_DE_COURS"]."'>".$row["TYPE_DE_COURS"]."</option>";
}
}
else echo'<script LANGUAGE="JavaScript">alert("pas bon");</SCRIPT>';
?> |
Merci d'avance.
beegees