【问题标题】:Set mysql php variable to equal dropdown value将mysql php变量设置为等于下拉值
【发布时间】:2015-12-22 04:26:43
【问题描述】:

如何使下面的 mysql 查询中的变量 $Category 等于在下面的下拉列表中选择的值?

这似乎是一个似乎无法弄清楚的简单概念。如果页面在下拉列表选项更改时自动运行新查询,那也很棒。此外,它应该默认在页面首次加载时显示所有记录。

MYSQL PHP 查询

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

下拉列表

    <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>

【问题讨论】:

    标签: php jquery mysql ajax


    【解决方案1】:

    如果您不想使用表单并从选择中传递选项的值,而是希望用户单击列表中的链接,则可以将该值附加到 URL 并将其作为 get 传递参数。

    变化:

    <li><a class="<?php echo $rows['category']; ?>"><?php echo $rows['category']; ?></a></li>
    

    收件人:

    <li><a href="?category=<?php echo $rows['category']; ?>" class="<?php echo $rows['category']; ?>"><?php echo $rows['category']; ?></a></li>
    

    然后您可以将该变量作为 $_GET 变量进行访问。喜欢:

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

    请务必清理您的用户输入数据。

    回复您的评论:

    如果要使用选择和选项,可以使用表单。表单的操作将是 PHP 脚本的 URL,它将处理表单元素的选定值。表单的方法可以是 GET(您可以像我之前概述的那样处理变量),也可以是 POST,您可以使用 $_POST 数组而不是 $_GET 数组来访问变量。

    <form name="form1" action="" method="GET">
        <select name="category">
         <option value="home">Home</option>
         <option value="work">Work</option>
         <option value="school">School</option>
        </select>
        <input type="submit" value="Submit"/>
    </form>
    

    或者,您可以使用 javascript 在选择的更改时重定向到您的处理代码:

    <select name="category" onchange="location = window.location.href + "?category="+this.selectedIndex.value;">
     <option value="home">Home</option>
     <option value="work">Work</option>
     <option value="school">School</option>
    </select>
    

    并以我之前概述的相同方式处理 $_GET 变量。

    【讨论】:

    • 如果我将其设为 SELECT OPTION 下拉列表会怎样。例如...
    • 我添加到原始答案以回应此评论。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-05
    • 2018-04-29
    • 1970-01-01
    • 2018-11-23
    • 2012-05-25
    • 2011-09-02
    • 1970-01-01
    相关资源
    最近更新 更多