|
|
|
| Есть такая проблема. У меня форма как обычно: регион-город. Выбираем регион, подгружаются нужные города и далее необходимо сохранить все в базу данных. Все работает через JavaScript+PHP+MySQL. Все рабртает, подгружаются города но при отправке, мне выдает "выбирете город" т.е. не видит "select". Вот часть кода:
<td >
<div class="box10" >регион</div>
<script>
function AjaxFunc ()
{
x = document.getElementById("select");//выбераем наш селект
x_send = x.selectedIndex; //Теперь x_send это то значение которое выбрали
//тут создаю обьект
if(window.XMLHttpRequest){
ajax1 = new XMLHttpRequest();
}
else
if(window.ActiveXObject)
{
ajax1 = new ActiveXObject("Microsoft.XMLHTTP");
}
else {
return;
};
ajax1.open("GET","ajax.php?select="+x_send, true);//делаю опен. Селект передаю через сылку
ajax1.send(null);
ajax1.onreadystatechange = function()// тут обрабатываю то что пришло
{
if (ajax1.readyState == 4 && ajax1.status == 200)
{
a = document.getElementById("data[2]");
a.innerHTML = ajax1.responseText;
};
}
};
</script>
<select name="data[1]" size="1" onchange='AjaxFunc()' id="select">
<option make="0"></option>
<?php
require_once ("config.php");
// тут должна быть функция mysql_pconnect
$sql = "SELECT * FROM region ORDER BY id_region";// выбераю все регионы
$sql_result = mysql_query($sql);
$sql_arr = mysql_fetch_array($sql_result);
do {
echo ("<option value='".$sql_arr['id_region']."'>".$sql_arr['name'].
"</option>"); // выводим список всех регионов в селекте
}
while ($sql_arr = mysql_fetch_array($sql_result))
?>
</select>
</td>
<td >
<div class="box10" >город</div>
<select name="data[2]">
<option value="1">выберите </option>
</select>
</td> ...
<input type="submit" name="add" value=
"ОТПРАВИТЬ" style="width:127; height:20;">
|
и ajax.php
<?php
// тут также должна быть функция mysql_connect
require_once ("config.php");
$sql = "SELECT * FROM gorod WHERE id_region = ".$_GET['select'] ;// в $_GET['select'] у нас содержиться // код страны которую выбрал пользователь. Выбираю все где код региона равен $_GET['select']
$sql_result = mysql_query($sql);
$sql_fetch_array = mysql_fetch_array($sql_result);
//формирую ответ ?>
<?php
do {
echo ("
<option value='".$sql_arr['id_gorod']."'>".$sql_fetch_array['name']."</option>");
}
while ($sql_fetch_array = mysql_fetch_array($sql_result));
?>
|
| |
|
|