php - 使用 coma(,) 通过复选框 php my sl 从表中过滤条目

标签 php mysql

大家好,我只是一个编码 php mysql 的新手。在很短的时间内,我试图测试 phpmysql 过滤器,就像我们现在在不同的电子商务网站上看到的那样。但在某一时刻,我粘在我有一张 table 的地方精选美食列表,例如: table [cuisine_view][1]。我已经通过 implode() 插入了这些值。我想过滤那些rest_ids,其中rest_cuisine=CHINESE。在查询中,我使用“find_in_set”标签从用,(逗号)分隔的字符串列表中搜索特定字符串。

这是我的复选框形式。

<form method="post" action="cuisine_view.php" enctype="multipart/form-data">
    <p>SELECT CUISINS:</P><br>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="INDIAN">INDIAN
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="CHINESE">CHINESE
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="CONTINENTAL">CONTINENTAL
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="REGIONAL">REGIONAL
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="BENGALI">BENGALI
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="SOUTHINDIAN">SOUTHINDIAN
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="NORTHINDIAN">NORTHINDIAN
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="BIRIYANI">BIRIYANI
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="MOGLAI">MOGLAI
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="KEBAB">KEBAB
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="PIZZA">PIZZA
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="BURGER">BURGER
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="SANDWITCH AND SALADS">SANDWITCH AND SALADS
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="DIETFOOD">DIETFOOD
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="ICE-CREAMS">ICE-CREAMS
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="COFEE AND TEA">COFEE AND TEA
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="SWEETS AND SNACKS">SWEETS AND SNACKS
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="FRIED CHICKEN">FRIED CHICKEN
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="MOMOS AND SOUP">MOMOS AND SOUP
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="MOKTALES">MOKTALES
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="CHOCOLATES">CHOCOLATES
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="BAKERY">BAKERY
    </div>
    <div class="cb-row">
        <input type="checkbox" name="answer[]" value="CAKES">CAKES
    </div>
    <br>
    <br>
    <input type="submit" class="button" name="submit" >
</form>





......................
And the php mysql query : 
...after successfull db connection...`$checkbox = implode(',', $_POST['answer']);
$sql = "SELECT Rest_id FROM vendor_filter WHERE find_in_set("$checkbox",Rest_cuisine)";

` 但它不起作用说错误消息为:解析错误:语法错误,C:\xampp\htdocs\templetes\cuisine_view.php中意外的'$ checkbox'(T_VARIABLE) 我被困住了……请赐教……问候。

  [1]: http://i.stack.imgur.com/v44iC.png

最佳答案

试试这个代码:-

$sql = "SELECT Rest_id FROM vendor_filter WHERE 1=1 ";
foreach($_POST['answer'] as $val){
$sql .=" and find_in_set($val,Rest_cuisine)";//AND|OR what you want 
}

Find_in_set Returns a value in the range of 1 to N if the string str is in the string list strlist consisting of N substrings

关于php - 使用 coma(,) 通过复选框 php my sl 从表中过滤条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33627508/

相关文章:

php - 如何更改动态生成值的文本颜色? - PHP

php - 允许用户从我的数据库构建 View 并编辑这些字段

mysql - 具有在其他表中指定的排除项的 SELECT 查询 - 1

python - 将数据库中的列与python代码中获取的变量进行比较

mysql - 如何从数据库中解析时间

php - 从 base 10 转换为 base 31(仅适用于选定字符)

javascript - 将 javascript 变量值传递给 php 变量

php - ZF2 中我的 module.php 中的命名空间错误

mysql - 在 MySQL 中跨数百万行使用 VARCHAR 与 INT

php - WordPress 调用数据库查询的问题