2015-12-19 3 views
1

У меня есть раскрывающийся список, который должен динамически изменять следующий запрос php mysql. В частности, раздел WHERE. Таким образом, в раскрывающемся списке есть ПИТАНИЕ, РАЗВЛЕЧЕНИЯ, ВАКАНСИИ и т. Д. Поэтому, если кто-то выбирает VACATIONS, запрос ниже будет заменять развлечения с помощью tblclients.category = 'Vacations', и результаты на странице будут меняться.Изменение запроса PHP Mysql динамически с помощью выпадающего списка

PHP

$query = mysql_query("SELECT * FROM tblClients WHERE tblclients.package = 'standard' and tblclients.category = 'Entertainment' LIMIT 0, 9", $connection); 

Jquery - Я понял, как получить следующий скрипт, чтобы знать, что выпадающий список опций выбран, но только понял, как показать/скрыть DIV.

<script> 
$(document).ready(function(){ 

    $('.dropdown .Catering').click(function(){ 
    $('#page_featured_container').show(); 

    }); 
    $('.dropdown .Entertainment').click(function(){ 
    $('#page_featured_container').show(); 

    }); 

     $('.dropdown .Vacations').click(function(){ 
    $('#page_featured_container').show(); 

    }); 
    </script> 

HTML Просто для полной справки, Мой Выпадающий список выглядит как таковой.

<section class="main"> 
     <div class="wrapper"> 
      <div id="dd" class="wrapper-dropdown-3" tabindex="1"> 
       <span>View By Category</span> 
       <ul class="dropdown"> 
      <?php while ($rows = mysql_fetch_array($query_category)) { ?> 
        <li><a class="<?php echo $rows['category']; ?>"><?php echo $rows['category']; ?></a></li> 
      <?php } ?> 
      </ul> 
      </div> 
     ​</div> 
    </section> 

Таким образом, в теории, мой Jquery хотел бы это ...

<script> 
$(document).ready(function(){ 

    $('.dropdown .Catering').click(function(){ 
    CHANGE PHP WHERE STATEMENT AND DISPLAY NEW RESULTS. 

ответ

2

Вы можете выполнить, что с помощью Ajax запроса с JQuery:

$(".dropdown .Catering").on("click", function() 
{ 
    // getting the classname of clicked category to write your query 
    var category = $(this).attr("class"); 
    $.ajax 
    ({ 
     url:"controller.php?category="+category, // supposed you grab the query like that 
     method: "get", // or post as you want 
     success: function(data) // where data is the php returned newest list 
     { 
      // this line will overwrite the html content of 'page_featured_container' 
      $("#page_featured_container").html(data); 
     } 
    }); 
}); 

, если вы предпочитаете использовать POST метод вы должны добавить:

method: "post", 
data: {category: category}, 
Смежные вопросы