php - 在 PHP 中更新已经选中的复选框

标签 php mysql checkbox

假设我有一个用户选择的复选框列表。

<input type="checkbox" name="utility[]" id="utility[]" value="Water" />Water<br />
<input type="checkbox" name="utility[]" id="utility[]" value="Cable" />Cable<br />
<input type="checkbox" name="utility[]" id="utility[]" value="Electricity" />Electricity<br />
etc...

用户选择了 Water,它被添加到数据库中。现在用户想要更新列表:

<input type="checkbox" name="utility[]" id="utility[]" value="Water" checked="checked"/>Water<br />
<input type="checkbox" name="utility[]" id="utility[]" value="Cable" />Cable<br />
<input type="checkbox" name="utility[]" id="utility[]" value="Electricity" />Electricity<br />
etc...

如何检查该实用程序是否已在 PHP 中检查过?

最佳答案

我过去所做的是,为了避免出现数百行臃肿的代码......

首先编译变量中的所有 html,没有任何“检查”实例。

$boxes = '';
$boxes .= '<input type="checkbox" name="utility[]" id="utility[]" value="Water" />Water<br />';
$boxes .= '<input type="checkbox" name="utility[]" id="utility[]" value="Cable" />Cable<br />';
$boxes .= '<input type="checkbox" name="utility[]" id="utility[]" value="Electricity" />Electricity<br />';

现在我遍历您的字段数组以进行检查。我也在这里提供了一个示例数组。

$already_checked = array('Water', 'Electricity');

foreach( $already_checked as $ac ) {
    $find = 'value="' . $ac . '"';
    $replace = $find . ' checked="checked"';
    $boxes = str_replace($find, $replace, $boxes);
}

echo $boxes;

关于php - 在 PHP 中更新已经选中的复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10268107/

相关文章:

php - 无法使用 PHP 中的 xpath() 函数从 XML 中检索数据

php - 如何在 php 的 mysql 查询中使用占位符

php - 需要帮助触发数据库错误

java - Mysql 使用 hibernate 根据请求进行备份

Angular 中的图像作为复选框

PHP Math 函数返回错误结果

php - 如何禁用 SELECT QUERY 对结果进行自动排序

php - MAMP - Phpmyadmin(处理错误,未找到错误代码 : 404, 错误)

php - $_POST 未设置

javascript - 如果选中生成框,如何显示 div