我有一个表单,客户可以在其中选择多个地点和交易,在提交表单后我想过滤数据

时间:2018-03-28 17:57:59

标签: php sql string

我有一个表单,客户可以在其中选择多个位置以及交易,在提交表单后我想从数据库中过滤数据,但我不明白如何将这些数组值转换为字符串并存储在单个变量中

这是我的形式,其本质上是动态的

<form method="POST" action="">
            <p id="success_para" ></p>
                <div class="navbar-default sidebar hemnav" role="navigation">

                    <div class="sidebar-nav navbar-collapse">

                      <h5> Agent By Trades </h5>

                        <ul class="nav in" id="side-menu">

                        <?php
                        $sql_trades=exeQuery("SELECT * FROM `service` WHERE 1");
                        while($res_trades=fetchAssoc($sql_trades)){
                        ?>
                            <li style="padding: 10px;"><input type="checkbox" name="sel_trades[]" value="<?php echo $res_trades['service_id'] ?>" class="filters"> <?php echo $res_trades['service_title'] ?></li>
                        <?php } ?>
                          </ul>
                    </div>

                </div>




<div class="navbar-default sidebar cattwo" role="navigation">

    <div class="sidebar-nav navbar-collapse">

      <h5> Agent By Location </h5>

        <ul class="nav in" id="side-menu">

                        <?php
                        $sql_loc=exeQuery("SELECT * FROM `location` WHERE 1");
                        while($res_loc=fetchAssoc($sql_loc))
                        {
                        ?>
                          <li style="padding: 10px;"><input type="checkbox" name="sel_loc[]" value="<?php echo $res_trades['location_id'] ?>" class="filters"> <?php echo $res_loc['location_name'] ?></li>
                        <?php } ?> 

          </ul>

    </div>

</div>

<button type="submit" name="filter" class="btn btn-block btn-lg btn-blu">Filter Now</button> </button><br><br>

</form>

2 个答案:

答案 0 :(得分:0)

您将在$ _POST中获取两个键的数组,&#39; [x,y,z]&#39;。你想把它转换成什么?字符串?

有什么标准吗?如果没有,implode(', ', $array)会将其转换为带有逗号分隔列表的单个字符串。从那里,您可以将其作为值存储在具有适当消毒的字段中。

答案 1 :(得分:0)

你可以使用php implode函数来存储所选值的数组

$ selection - implode(',',$ _ POST ['sel_loc'])

然后您可以将此值存储在数据库中,