繁体   English   中英

使用PHP MySQL在多个选项中设置所选值

[英]Set Selected value in multiple option using Php mysql

我有这段代码用于在$ imeitransferserial中的select Multiple中设置选定值,这是值array(2){[0] => string(15)“ 869434022236534” [1] => string(15)“ 869434022351051”}在我的$ imeiserial中,我有array(21){[0] => string(15)“ 869434022236534” [1] => string(16)“ 869434022353453” [2] => string(16)“ 869434022351051” [3] =>字符串(16)“ 869434022234414” [4] =>字符串(16)“ 869434022342456”,依此类推。等等。我只是想在我的选项中自动选择imeitransferserial的值,所以我尝试了此代码,但是所有项目都在选择。

 $trans=mysqli_query($link,"select * from transferinventory where ITEM_CODE_MX='OPP01-A11WGRY'");
    while($row2=mysqli_fetch_array($trans))
    {

     $imeitransfer=$row2["IMEI_MX"];
    $imeitransferserial = explode(',', $imeitransfer);
    var_dump($imeitransferserial);

    }
    $query=mysqli_query($link,"select * from inventory where ITEM_CODE_MX='OPP01-A11WGRY' AND BRANCH_CODE_MX='AC001'");
    while($row=mysqli_fetch_array($query))
    {

    $imei=$row["IMEI_MX"];
    $imeiserial = explode(',', $imei);

    }
    ?>
    <select id="tags" name='imei[]' style="width:300px;"  class="form-control select2-offscreen" onchange="getCount()" multiple>
    <?php
    foreach($imeiserial as $is){
        $imeicode = trim($is);
     if (in_array($imeicode,$imeitransferserial)) {

          $select = 'selected="selected" ';
          }
         if (!empty($imei)) {
            echo "<option  " . $select . "value='$imeicode'>".$imeicode."</option>";
        }
    }

        ?>

    </select>

问题是您在第一次迭代中设置了$select的值,并且在得到false时从不清除该值。

if (in_array($imeicode,$imeitransferserial))

您需要添加其他-

if (in_array($imeicode,$imeitransferserial)) {
      $select = 'selected="selected" ';
 }
 else {
       $select = "";
 }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM