我想为文档创建一个表格,并允许用户选择是否需要与任务相关的文档。我需要它来检查文档的当前状态,以查看它是否已经被需要以及是否将复选框标记为已选中。数据库中当前有 4 个文档,并且只有 2 个关联到此特定任务的 2 个文档。
当文档与任务没有关联时,数据库中将没有条目说它没有关联,它只是简单地不会出现在该表中。
我目前拥有的代码将针对这两个具有关联的文档显示复选框,但是对于没有关联的文档根本不显示任何复选框。我希望它仍然显示 3 个复选框,以便用户可以更改其关联,但默认情况下它应该检查不需要。目前它根本没有显示任何复选框。下面是 PHP 片段。请告知您是否想要屏幕截图或数据库转储。
任何帮助将不胜感激。我希望这只是漫长的一天,我忘记了一些简单的事情。
<table border=1>
<tr>
<td align=center><p>Here you can associate documents to Jobs and Tasks to.</p> </td>
</tr>
</table>';
$order2 = "SELECT * FROM documents";
$result2 = mysql_query($order2);
while ($row2 = mysql_fetch_array($result2)) {
$nice_name = $row2['nice_name'];
$doc_id = $row2['id'];
}
echo '
<h3>Documents</h3>
<table border=1>
<tr><th>Document Name</th><th>Document Type</th><th>Required</th><th>Optional</th><th>Not Required</th></tr>
';
$order2 = "SELECT * FROM documents ORDER BY type_id";
$result2 = mysql_query($order2);
while ($row2 = mysql_fetch_array($result2)) {
$nice_name = $row2['nice_name'];
$doc_id = $row2['id'];
$doc_type_id = $row2['type_id'];
echo '
<tr>
<td>'.$nice_name.'</td>';
$order3 = "SELECT * FROM document_types WHERE id = '$doc_type_id'";
$result3 = mysql_query($order3);
while ($row3 = mysql_fetch_array($result3)) {
$type_name = $row3['type_name'];
echo '
<td>'.$type_name.'</td>';
$order4 = "SELECT * FROM document_assoc WHERE doc_id = '$doc_id'";
$result4 = mysql_query($order4);
while ($row4 = mysql_fetch_array($result4)) {
$requirement = $row4['requirement'];
echo '
<td><input type="checkbox" name="req" value="2" '; if ($requirement == 2) { echo ' checked '; } echo '></td>
<td><input type="checkbox" name="opt" value="1" '; if ($requirement == 1) { echo ' checked '; } echo '></td>
<td><input type="checkbox" name="not" value="0" '; if ($requirement < 1) { echo ' checked '; } echo '></td>';
}
}
echo '
</tr>';
}
echo '
</table>';
到目前为止,我刚刚尝试使用最后一个复选框调整要求 =。但是,无论我使用 NULL 等,它都保持不变——我猜我错过了一些东西。
亲切的问候,
n00bstacker