Bonjour a tous,
j'ai un petit soucis avec un script PHP/MYSQL/AJAX pour une select box.
impossible d'afficher le résultat dans le second select box !
Voici les codes
Fichier INDEX.PHP
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
<html>
<head>
 <title></title>
   <script src="ajax_req.js" type="text/javascript"></script>
</head>
<body>
<form method="post">
<select name="list_auto_marque" onchange="htmlData2('list_auto.php', 'ch_list_auto='+this.value)" />
	<?php
        $db = mysql_connect('localhost', 'xxx', 'xxxxxxx');
        mysql_select_db('xxx',$db);
        $sql = 'SELECT id,marque FROM automobiles';
        $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
        while($data = mysql_fetch_assoc($req))
            {
            echo '<option value="'.$data['marque'].'">'.$data['marque'].'</option>';
            }
        ?>
</select>
<br>
<div id="txtResult2"> <select name="list_auto_modele"><option></option></select> </div>
 
<input type="submit" />
</form>
</body>
</html>
fichier LIST_AUTO.PHP
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
<select name="list_auto_modele">
	<?php
	$db = mysql_connect('localhost', 'xxx', 'xxxxxx');
	mysql_select_db('xxx',$db);
$go_list_auto=$_GET['ch_list_auto'];
	$sql2 = 'SELECT * FROM automobiles WHERE marque='.$go_list_auto.'';
	$req2 = mysql_query($sql2) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
	while($data2 = mysql_fetch_assoc($req2))
	    {
	    echo '<option value="'.$data2['id'].'">'.$data2['modele'].'</option>';
	    }
	?>
</select>
fichier AJAX_REQ.JS
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
function GetXmlHttpObject(handler)
{
   var objXMLHttp=null
   if (window.XMLHttpRequest)
   {
       objXMLHttp=new XMLHttpRequest()
   }
   else if (window.ActiveXObject)
   {
       objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
   }
   return objXMLHttp
}
 
function stateChangedé()
{
   if (xmlHttp.readyStateé==4 || xmlHttp.readyStateé=="complete")
   {
           document.getElementById("txtResulté").innerHTML= xmlHttp.responseText;
   }
   else {
           //alert(xmlHttp.status);
   }
}
 
 
// Will populate data based on input
function htmlData2(url, qStr)
{
   if (url.length==0)
   {
       document.getElementById("txtResult2").innerHTML="";
       return;
   }
   xmlHttp=GetXmlHttpObject()
   if (xmlHttp==null)
   {
       alert ("Browser does not support HTTP Request");
       return;
   }
 
   url=url+"?"+qStr;
   url=url+"&sid="+Math.random();
   xmlHttp.onreadystatechange=stateChanged2;
   xmlHttp.open("GET",url,true) ;
   xmlHttp.send(null);
}
Quelqu'un voit-il le problème ?
merci d'avance pour votre aide.