使用带有 HTML 和 PHP 的复选框(SQLite 数据库)

Using Checkboxes with HTML and PHP (SQLite Database)

我正在尝试设置复选框的值。我确实有一个带有 table 和一些行的 SQLite 数据库。有些行包含 STATUS = 1,有些包含 STATUS = 0.

... "STATUS" BOOL NOT NULL DEFAULT 1, ...

因此,我使用 fetchArray 函数检查当前行,其他一切正常,但在我的 HTML 站点中,所有复选框都被选中。有没有逻辑错误?

while ($row = $table->fetchArray(SQLITE3_ASSOC))
{
    $output .= '<tr>';

    if ($row['STATUS'] == 1) {
        $output .= '<td class="STATUS" data-id1="' . $row['ID'] . '" bgcolor="#cecece"><input type="checkbox" name="STATUS" checked="true"></td>';
    }
    else {
        $output .= '<td class="STATUS" data-id1="' . $row['ID'] . '" bgcolor="#cecece"><input type="checkbox" name="STATUS" checked="false"></td>';
    }

    $output .= '<td class="USER" data-id2="' . $row['ID'] . '" contenteditable="true">' . $row['USER'] . '</td>
                ...
                <td class="DESCRIPTION" data-id11="' . $row['ID'] . '" contenteditable="true">' . $row['DESCRIPTION'] . '</td>
                <td><button type="button" name="btn_edit" data-id12="' . $row['ID'] . '" class="btn btn-xs btn-warning btn-block btn_edit">Edit</button></td>
                <td><button type="button" name="btn_delete" data-id13="' . $row['ID'] . '" class="btn btn-xs btn-danger btn-block btn_delete">Delete</button></td>
            </tr>';
}

这是解决方案:

if ($row['STATUS'] == 1) {
    $output .= '<td class="STATUS" data-id1="' . $row['ID'] . '" bgcolor="#cecece"><input type="checkbox" name="STATUS" checked>' . $row['STATUS'] . '</td>';
}
else {
    $output .= '<td class="STATUS" data-id1="' . $row['ID'] . '" bgcolor="#cecece"><input type="checkbox" name="STATUS">' . $row['STATUS'] . '</td>';
}

如您所见,我只是更改了 HTML 代码的语法。我不知道为什么 checked 属性 必须这样使用,但老实说我真的不在乎。 ;-)