我在mysql数据库中有以下三个表。
博客表格
id,标题,内容,创建,修改,活动
标签表格
id,标签名称
blog_tag表格
id、tag_id、blog_id
我想从这些表中获取数据,并显示在表单的select元素中。还将选定数据显示为选定数据,将剩余数据显示为select的选项。像这样。
<select name="tags_id[]" multiple="multiple">
<option value="id" selected="selected">tag name</option>
<option value="id" selected="selected">tag name</option>
<option value="id">tag name</option>
<option value="id">tag name</option>
<option value="id" selected="selected">tag name</option>
<option value="id">tag name</option>
</select>
我使用了php和mysql。如何连接和检索该条件的数据,以及什么将是循环条件。
您可以这样做:
<option value="id" <?php echo ($tag =='tag name' ? 'selected' : '') ?>>
tag name</option>
从数据库中获取值,对它们进行迭代。。。并检查id是否匹配。。选择该值,否则在不添加所选关键字的情况下回显该值。希望这能给你一个主意。
<?php $actualValues= // get the from database ?>
<select name="tags_id[]" multiple="multiple">
<?php
foreach($tableRows as $row){
if($row['id']== $actualValue[$i])
echo "<optionvalue'".$actualValue[$i]."' selected='selected'>$row['value']</option>";
else
echo "<optionvalue'".$actualValue[$i]."'>$actualValue['value']</option>";
$i++;
?>
</select>
试试这个。这段代码从标签表中获取所有标签名称,并显示在选择框中。
<select name="tags_id" multiple="multiple">
<?php
$result=mysql_query("select id,tag_name from tag");
while ($row = mysql_fetch_array($result)) {
if ($_GET['tags_id']==$row["id"]) {
echo '<option selected="selected" value='.$row["id"].'>'.$row["tag_name "].'</option>';
} else {
echo '<option value='.$row["id"].'>'.$row["tag_name "].'</option>';
}
}
?>
</select>