需要帮助以php/html格式显示基于现有MySQL数据的选定列表项

需要帮助以php/html格式显示基于现有MySQL数据的选定列表项,php,html,mysql,forms,Php,Html,Mysql,Forms,任何帮助都将不胜感激 我正在构建一个php表单来更新链接到我的网站的MySQL数据库 表单的一部分包括列表字段,用户可以按住ctrl键选择多个值,然后将这些值作为逗号分隔的值传递到一个MySQL字段中。有关数据的三个真实示例,请参见下文: 3014 301430153026 30263028 表单正在根据需要更新我的数据库,但是当用户返回表单进行另一次更新时,他们选择的多个值不是预先选择的 有人能帮我弄清楚为什么$row_editme['NewsTypeID']是包含值字符串的字段吗。字段类型是

任何帮助都将不胜感激

我正在构建一个php表单来更新链接到我的网站的MySQL数据库

表单的一部分包括列表字段,用户可以按住ctrl键选择多个值,然后将这些值作为逗号分隔的值传递到一个MySQL字段中。有关数据的三个真实示例,请参见下文:

3014

301430153026

30263028

表单正在根据需要更新我的数据库,但是当用户返回表单进行另一次更新时,他们选择的多个值不是预先选择的

有人能帮我弄清楚为什么$row_editme['NewsTypeID']是包含值字符串的字段吗。字段类型是一个集合

<td nowrap="nowrap" align="right">NewsTypeID:</td>
<td>
  <select name="NewsTypeID[]" size="4" multiple="multiple">
  <?php 
    do {  
  ?>
     <option value="<?php echo $row_types['id']?>" <?php if (!(strcmp($row_types['id'], htmlentities($row_editme['NewsTypeID'], ENT_COMPAT, 'utf-8')))) {echo "SELECTED";} ?>><?php echo $row_types['name']?></option>
  <?php } while ($row_types = mysql_fetch_assoc($types)); ?>
      </select>
</td>
NewsTypeID:

我认为它不应该被选中

你能试试检查一下吗

<input type="checkbox" <?php /*if condition is met here, then*/ echo "checked='checked'" ?> />

我认为它不应该被选中

你能试试检查一下吗

<input type="checkbox" <?php /*if condition is met here, then*/ echo "checked='checked'" ?> />

试试这样的方法

<select name="NewsTypeID[]" size="4" multiple="multiple">
  <?php 
  do {  
    $selected = htmlentities($row_editme['NewsTypeID'], ENT_COMPAT, 'utf-8');
    $selected_arr = explode(",",$selected);
  ?>
   <option value="<?php echo $row_types['id']?>" <?php if (in_array($row_types['id'],$selected_arr)) {echo "selected";} ?>>
      <?php echo $row_types['name']?>
   </option>
  <?php } while ($row_types = mysql_fetch_assoc($types)); ?>
</select>


试试这样的

<select name="NewsTypeID[]" size="4" multiple="multiple">
  <?php 
  do {  
    $selected = htmlentities($row_editme['NewsTypeID'], ENT_COMPAT, 'utf-8');
    $selected_arr = explode(",",$selected);
  ?>
   <option value="<?php echo $row_types['id']?>" <?php if (in_array($row_types['id'],$selected_arr)) {echo "selected";} ?>>
      <?php echo $row_types['name']?>
   </option>
  <?php } while ($row_types = mysql_fetch_assoc($types)); ?>
</select>


您的
$row\u editme['NewsTypeID']
中有什么内容?仅供参考-我已尝试将{echo“selected=\'selected\”;}写入{echo“selected”;}而不是{echo“selected”;},但不幸的是,这并没有改变任何内容;301430123026或3011,甚至30163014等等。你的
$row\u editme['NewsTypeID']
中有什么?仅供参考-我试过写{echo“selected=\\'selected\”}而不是{echo“selected”;},不幸的是,这并没有改变任何事情。嗨,Deepak-the$row\u editme['NewsTypeID']包含用户以逗号分隔的值进行的选择,以便可以包含;301430123026或3011,甚至30163014等。不幸的是,选中的选项不起作用,因为它不是一系列复选框。它是一个按住ctrl键选择多个项目的列表。嘘,我没有注意到。:-)很抱歉。不幸的是,选中的选项不起作用,因为它不是一系列复选框。它是一个列表,您可以在其中按住ctrl键选择多个项目。嘘,我没有注意到。:-)很抱歉。嗨,迪帕克-我认为这是一个正确的轨道,因为它选择了多个项目。然而一件奇怪的事情是,它选择了我没有选择的项目,然后每次我回去时它都会添加一个。嗨,迪帕克-非常感谢你的帮助,它现在正在工作。非常感谢:)嗨,迪帕克-我认为这是一个正确的轨道,因为它选择了多个项目。然而一件奇怪的事情是,它选择了我没有选择的项目,然后每次我回去时它都会添加一个。嗨,迪帕克-非常感谢你的帮助,它现在正在工作。非常感谢:)