【问题标题】:Database Search with multiple parameters具有多个参数的数据库搜索
【发布时间】:2015-07-19 04:05:54
【问题描述】:

我正在使用以下搜索数据库:

   <script type="text/javascript">
      $(function() {
        $("#lets_search").bind('submit',function() {
          var cat1 = $('#cat1').val();
           $.post('db.php',{cat1:cat1}, function(data){
             $("#search_results").html(data);
           });
           return false;
        });
      });
    </script>

cat1 是下拉框的 id。我想添加另一个下拉框,以便查询:

SELECT * 
  FROM business
  WHERE category='".$_POST['cat1']."' and subcategory='".$_POST['cat2']."'

我似乎无法让 javascript 使用多个下拉菜单。这个我试过了,还是不行。

<script type="text/javascript">
  $(function() {
    $("#lets_search").bind('submit',function() {
      var cat1 = $('#cat1').val();
       var cat2 = $('#cat2').val();
       $.post('db.php',{cat1:cat1},{cat2:cat2}, function(data){
         $("#search_results").html(data);
       });
       return false;
    });
  });
</script>

【问题讨论】:

    标签: javascript php html sql


    【解决方案1】:

    您正在以错误的方式构建数据。试试 -

    $.post('db.php',{cat1:cat1,cat2:cat2}, function(data){ ...
    

    【讨论】:

    • 评论也够了,不用回答了
    • 谢谢。当它允许我时,我会把它作为正确的答案
    • @SunilPachlangia 知道这一点,但根据 - meta.stackoverflow.com/questions/271229/…。给出了答案。
    • 这只是一个我们应该遵循帮助中心指南的问题
    【解决方案2】:

    如果您有多个要发送的元素,您可以通过序列化表单以更安全的方式重写您的函数。

    块引用 $.post('db.php',$('#form').serialize(), function(data){ ...});

    【讨论】:

      猜你喜欢
      • 2011-10-06
      • 2011-08-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-09
      • 2015-05-08
      相关资源
      最近更新 更多