[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: не удается получит данные с $_POST
nevka
Добрый вечер!
надо изобразить что-то на подобие фильтра. Возможные поля для фильтрации: категория товара, мин.цена и макс.цена
есть форма, и следом идет запрос к базе данных и вывод результата на ту же страницу.
код:



<form name="my_filter_form" method="POST">
<
select style="width:160px;" name="my_filter_category_id" id="my_filter_category_id">
<
option value="*">Все категории</option>;
<?php
include("db_connect.php");
$result_c=mysql_query("SELECT * FROM category_description ORDER BY name", $baza);
while($row_c=mysql_fetch_array($result_c)){
echo("<option value='".$row_c['category_id']."'>".$row_c['name']."</option>");
}
?>
</select>

<
select style="width:100px;" name="min_price" id="my_min_price">
<
option value='0'>не важно</option>
<
option value='1000'>1000</option>
<
option value='2000'>2000</option>
<
option value='3000'>3000</option>
</
select>
<
span>-</span>
<
select style="width:100px;" name="max_price" id="my_max_price">
<
option value="1000">1000</option>
<
option value="2000">2000</option>
<
option value="3000">3000</option>
<
option value="2000000">не важно</option>
</
select>

<
input type="submit" name="my_button_search" value="поиск" id="my_button_search" />
</
form>


<
div class="my_results">
<?php
$my_filter_category_id = $_POST['my_filter_category_id'];
$my_min_price = "'".$_POST['my_min_price']."'";
$my_max_price = $_POST['my_max_price'];

include("db_connect.php");

if($my_filter_category_id == '*'){
$result_search = mysql_query("SELECT * FROM product INNER JOIN (product_description INNER JOIN product_to_category USING (product_id)) USING (product_id) WHERE product.price BETWEEN '$my_min_price' AND '$my_max_price'", $baza);
}
else{
$result_search = mysql_query("SELECT * FROM product INNER JOIN (product_description INNER JOIN product_to_category USING (product_id)) USING (product_id) WHERE product_to_category.category_id='$my_filter_category_id' AND product.price BETWEEN '$my_min_price' AND '$my_max_price'", $baza);
}


while($row_search=mysql_fetch_array($result_search)){
echo ("<div class='spez_pred_box'><div id='spez_pred1'><div class='image'><a href='index.php?route=product/product&path=".$row_search['category_id']."&product_id=".$row_search['product_id']."'><img width='177' height='117' src='/image/".$row_search['image']."' title='".$row_search['name']."' alt='".$row_search['name']."' /></a></div><div class='name'><a href='index.php?route=product/product&path=".$row_search['category_id']."&product_id=".$row_search['product_id']."'>". $row_search['name']."</a></div><div class='price'>". $row_search['price']."</div><div class='cart'><input type='button' value='Купить' class='button' onclick=\"addToCart('".$row_search['product_id']."');\" /></div></div></div>");
}
?>
</div>


Проблема: значение категории ($my_filter_category_id = $_POST['my_filter_category_id'] выводиться, и как положено фильтруется. А значения мин.цены и макс.цены вообще не передается через $_POST. Но если я переменными $my_max_price и $my_min_price присвою какое либо числовое значение - то все работает.
Вот теперь не понимаю, почему $_POST['my_max_price'] и $_POST['my_min_price'] пустые???
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.