Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在多个选择框中显示所选项目_Php_Mysql_Html - Fatal编程技术网

Php 如何在多个选择框中显示所选项目

Php 如何在多个选择框中显示所选项目,php,mysql,html,Php,Mysql,Html,这是我在编辑页面中的多选下拉框。这里的问题是,这只显示一个选定的项目。它不会显示其中所有选定的项目。我怎样才能纠正这个问题 <?php $query="SELECT * FROM lab"; $dropdown = "<select name='labid[]' multiple='multiple' style='height:80px;' size='5' id='lab'>"; //$dropdown .= "&

这是我在编辑页面中的多选下拉框。这里的问题是,这只显示一个选定的项目。它不会显示其中所有选定的项目。我怎样才能纠正这个问题

    <?php
         $query="SELECT * FROM lab";
        $dropdown = "<select name='labid[]' multiple='multiple'  style='height:80px;' size='5' id='lab'>";
        //$dropdown .= "<option value=''>Select lab to assign </option>";
        $result2 = mysql_query ($query);
        while($row2 = mysql_fetch_assoc($result2)) 
        {

  $dropdown .= "\r\n<option value='{$row2['lab_id']}'";
            while($row1 = mysql_fetch_assoc($result1)) 
              {
                 if(($row1['lab_id'])==($row2['lab_id']))
                  {
                      $dropdown .=" selected='selected'";
                  }
             }
  $dropdown .= ">{$row2['l_name']}</option>";
        }
        $dropdown .= "\r\n</select>";
        echo $dropdown;
       ?>

尝试将while循环更改为foreach循环

改变

 while($row2 = mysql_fetch_assoc($result2)) 


我认为它甚至没有选择一个项目。对吗?如果仅选择第一项(以db为单位),则应
回送
$row1['lab_id']、$row2['lab_id']
,并检查其值以进行确认。:)这似乎是一个好方法。但为foreach()提供的参数无效。在第二个foreach循环中发生错误。{while($row1=mysql_fetch_assoc($result1))}@viddz:该错误可能是由于未声明$result1造成的。您必须在代码段中声明$result1。
foreach(mysql_fetch_assoc($result2) as $row2)
 while($row1 = mysql_fetch_assoc($result1)) 
foreach(mysql_fetch_assoc($result1) as $row1)