Доброго времени суток, необходимо организовать поиск без перезагрузки страницы с выбором категории где искать, в данном случае категорией является столбец в БД. Суть в том что бы сначала selectом выбрать столбец для поиска а затем в инпуте вводить сам запрос для поиска.
сейчас все работает на инпуте, то есть сам инпут
<input type="text" class="search_input" name="search" id="search" class='search_box'/>
ajax запрос
<script type="text/javascript">
$(function(){
$("#search").keyup(function(){
var search = $("#search").val();
$.ajax({
type: "POST",
url: "search_ajax.php",
data: {"search": search},
cache: false,
success: function(response){
$("#resSearch").html(response);
}
});
return false;
});
});
</script>
ну и сам php обработчик
if (isset($_POST['search'])) {
$s = $_POST['search'];
echo $s;
}
$query_to_db = mysql_query("SELECT * FROM equipment WHERE client_name LIKE '%$s%'");
и все работает отлично, то есть при вводе на любое изменение в input выводится соответствующее значение из таблицы "equipment" и столбца "client_name", но нужно динамически выбирать поле selectoм, что бы например было так:
<select class="search_in" name="search_in" id="search_in">
<option value='' selected='selected'>Искать по</option>
<option VALUE="id">Номер</option>
<option VALUE='status'>Статус</option>
<option VALUE='client_name'>Имя клиента</option>
<option VALUE='client_tel'>Телефон клиента</option>
</select>
и уже соответственно php обработчик будет выглядеть:
if (isset($_POST['search_in'])) {
$s_i = $_POST['search_in'];
echo $s_i;
}
if (isset($_POST['search'])) {
$s = $_POST['search'];
echo $s;
}
$query_to_db = mysql_query("SELECT * FROM equipment WHERE $s_i LIKE '%$s%'");
а ajax примерно!!!! вот так:
<script type="text/javascript">
$(function(){
$("#search").keyup(function(){
var search = $("#search").val();
$.ajax({
type: "POST",
url: "search_ajax.php",
data: {"search": search},
cache: false,
success: function(response){
$("#resSearch").html(response);
}
});
return false;
});
});
$(function(){
$("#search_in").change(function(){
$.ajax({
type : 'POST',
url : 'search_ajax.php',
data : { search_in: $(this).val() },
success: function(response){
$("#resSearch").html(response);
}
});
})
}
);
</script>
по отдельности все работает, задача в том что бы сначала выбрать значение в select, сохранить, но передавать его вместе с изменяющимся inputom. Сейчас это дело передается сразу как только тронуть или input или select, и соответственно php обработчик дает ошибку ибо не находит второго параметра, а нужно что бы select "ждал" ввода в input и передавался только вместе с ним, перелопатил много инфы, толком ничего не получилось, может кто в курсе как такое организовать?