http://pyha.ru:80/forum/topic/3436.0
Может я полный креветко в этом ( а скорее так оно и есть)
НО У МЕНЯ НЕ РАБОТАЕТ!!!!!!!!!!
Смысл у меня такой же, только структура бд немного другая
CREATE TABLE `t_departament` (
`id_departament` int(11) NOT NULL auto_increment,
`name` varchar(16) NOT NULL,
`is_deleted` enum("Yes","No") NOT NULL,
PRIMARY KEY (`id_departament`);
CREATE TABLE `t_seria` (
`id_seria` int(11) NOT NULL auto_increment,
`id_departament` int(11) NOT NULL,
`name` varchar(16) NOT NULL,
`is_deleted` enum("Yes","No") NOT NULL,
PRIMARY KEY (`id_seria`,`id_departament`);
CREATE TABLE `t_workshop` (
`id_workshop` int(11) NOT NULL auto_increment,
`id_seria` int(11) NOT NULL,
`name` varchar(35) NOT NULL,
`is_deleted` enum("Yes","No") NOT NULL,
PRIMARY KEY (`id_workshop`,`id_seria`);
CREATE TABLE `t_group` (
`id_group` int(11) NOT NULL auto_increment,
`id_workshop` int(11) NOT NULL,
`name` varchar(16) NOT NULL,
`is_deleted` enum("Yes","No") NOT NULL,
PRIMARY KEY (`id_group`,`id_workshop`);
По логике я изменяю только сам запрос в коде с примера и у меня получилось следующее:
SELECT.PHP
<?PHP
ini_set('display_errors',1);
error_reporting(E_ALL ^E_NOTICE);
$db = mysql_connect ("localhost", "root", "123456");
mysql_query ("set character_set_client='utf8'");
mysql_query ("set character_set_results='utf8'");
mysql_query ("set collation_connection='utf8_general_ci'");
mysql_select_db("HAZ",$db);
?>
<script src="JsHttpRequest.js"></script>
<script>function doload(value){
var req=new JsHttpRequest();req.onreadystatechange=function(){
if(req.readyState==4) document.getElementById("result").innerHTML=req.responseText;}
req.open(null,"select2.php",true);req.send({departament:value});}
function doload1(value){
var req=new JsHttpRequest();req.onreadystatechange=function(){
if(req.readyState==4) document.getElementById("result1").innerHTML=req.responseText;}
req.open(null,"select3.php",true);req.send({brand:value, model:value});}
function doload2(value){
var req=new JsHttpRequest();req.onreadystatechange=function(){
if(req.readyState==4) document.getElementById("result2").innerHTML=req.responseText;}
req.open(null,"select4.php",true);req.send({brand:value, model:value, body:value});}
</script>
<form action="script.php" method="POST">
<select name="departament" id="departament" onchange="doload(this.value);">
<option value="no_action">–Выберите марку–</option>
<?PHP
$sql = mysql_query ("SELECT DISTINCT * FROM t_departament"); while ($new_brand = mysql_fetch_array($sql))
echo '<option value='.$new_brand['id_departament'].'>'.$new_brand['name'].'</option>';
?>
</select>
<br>
<br>
<div id="result"></div>
<br>
<div id="result1"></div>
<br>
<div id="result2"></div>
<input type="submit" value="Найти">
</form>
SELECT2.PHP
<?PHP
$db = mysql_connect ("localhost", "root", "123456");
mysql_query ("set character_set_client='utf8'");
mysql_query ("set character_set_results='utf8'");
mysql_query ("set collation_connection='utf8_general_ci'");
mysql_select_db("HAZ",$db);
require("JsHttpRequest.php");
$JsHttpRequest=new JsHttpRequest("windows-1251");
?>
<select name="model" id="model" onchange="doload1(this.value, this.value);">
<option value="no_action">–Выберите модель–</option>
<?PHP
$sql = mysql_query ('SELECT * t_seria WHERE id_departament = "'.mysql_real_escape_string($_REQUEST["departament"]).'"');
if($sql)
{
while ($new_model= mysql_fetch_array($sql))
{
echo '<option value="'.$new_model['id_seria'].'">'.$new_model['name'].'</option>';
}
}
else { echo mysql_error();}
?>
</select>
В итоге:
Первый селект есть и заполнен корректно, при выборе значения в нем появляется второй но он пустой :( :(
Подскажите что я не так делаю….