我需要加入两个表,如果contact_id字段在列表中,则需要检查重复区域的html复选框。
表1“contact_to_category” - id,contact_id和category_id
表二“类别” - category_id,类别,状态
我正在尝试为联系人创建更新页面并显示表2中的所有类别,如果客户端contact_id在表1中,则选中该复选框。通过这种方式,编辑人员可以查看哪些类别已经处于活动状态。
以下是我尝试但无法弄清楚如果他们的ID列在表一中,如何检查复选框?我已尝试过连接,但没有变量来说明a = b然后在复选框的重复区域中回显“已检查”。
谢谢!
$query_flags = "SELECT a.category, a.status, a.category_id FROM category a LEFT JOIN contact_to_category ON contact_to_category.category_id = a.category_id AND contact_to_category.contact_id = '$contactid' AND a.status = 1";
<?php do { ?>
<table width="327" border="0" cellspacing="0" cellpadding="1">
<tr>
<td width="20" align="right"><input name="catlist[]" type="checkbox" id="catlist[]" value="<?php echo $row_flags['category_id']; ?>" />
<label for="catlist[]"></label></td>
<td width="226"><?php echo $row_flags['category']; ?></td>
</tr>
</table>
<?php } while ($row_flags = mysql_fetch_assoc($flags)); ?>
答案 0 :(得分:0)
您正在执行LEFT JOIN
,当category_id不在第一个表中时,将显示空行,因此您可以选中复选框,我已在第一个表{{1}中添加了一列检查它是否存在
contact_to_category.category_id AS second_cat_id