【问题标题】:how insert data from multi select in mysql [closed]如何在mysql中从多选插入数据[关闭]
【发布时间】:2014-11-14 01:26:58
【问题描述】:

如何在mysql中从多选中插入数据

或者使数组字符串像 ->...

 $arr =array('a'=>'1','b'=>'3','c'=>'5');

输出喜欢 1,3,5 将所有值插入一列中,例如 $sth = $this->db->prepare("UPDATE data SET category = $arr where id = 1");

                <div class="control-group">
                    <label for="area" class="control-label">Rank</label>
                    <div class="controls">
                        <input type="number" name="rank" id="area" value="<?= $this->detali->rank ?>" />
                    </div>
                </div>





                <div class="control-group">
                    <label for="artist " class="control-label">Artist</label>
                    <?php
                    $art = explode(',', $this->detali->artist);
                    ?>
                    <div class="controls">
                        <select multiple="multiple" id="my-select" name="artist[]" class='multiselect'>
                            <?php 
                            foreach ($this->artist as $artist) { ?>
                                <option value="<?= $artist->artist_id ?>" <?php

                                            foreach ($art as $value) {

                                if (!(strcmp("$artist->artist_id", htmlentities($value, ENT_COMPAT, 'utf-8')))) {
                                    echo "SELECTED";
                                }                                                    

                                            }

                                ?>><?= $artist->artist_name ?></option>
                            <?php } ?>
                        </select>
                    </div>
                </div>                    

如何从$_POST['artist'] (artist[])获取数据

like  1,5,6

不是数组

【问题讨论】:

    标签: php mysql multi-select


    【解决方案1】:

    如果我理解正确,您希望将数据放入数组中,例如

    array(3) {
        [0] => 'one',
        [1] => 'two',
        [2] => 'three'
    }
    

    并将其输出为类似

    的字符串
    one,two,three
    

    如果是这样,你可以使用PHP的implode函数:

    <?php
        $my_array = array('one', 'two', 'three);
        $my_string = implode(',', $array);
    ?>
    

    implode 的文档可以在 http://php.net/manual/en/function.implode.php 找到

    【讨论】:

      【解决方案2】:

      这应该可以解决问题:

      $arr =array('a'=>'1','b'=>'3','c'=>'5');
      echo implode(",", array_values($arr));
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-05-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多