php - 如何将 list 值保存到 MySQL 并能够重新填充复选框?

标签 php mysql sql

我不知道如何将选中的复选框表单输入保存到 MySQL 中,并能够检索它们并重新填充输入。

我什至还没有创建表格,因为我无法想象如何去做。

我有一个包含多行(tr)的html表,其中所有表都有这些复选框,我想将每个选定的框保存到MySQL并且 能够检索所选内容并重新填充它,但正如我所说,我不知道该怎么做。

我能想到的唯一方法是,使用 foreach 提交所选内容并保存所有所选内容,在每一行中使用其特定的表行 ID,但我不明白如果选择它们,我将如何检索它。

我有以下内容,但不知道如何检索它。另外,复选框可以随时增加(选项),因此我无法为它们创建特定的表格,因为当前有 4 个复选框,但明天可能会有 20 个复选框可供选择。

$checkboxData = $_POST['cbO'];
$tableiD      = '1';

if(isset($_POST['submit']))
{
    for( $i=0; $i < sizeof($checkboxData); $i++ )
    {
        $sth = $this->db->prepare("INSERT INTO table(rows) VALUES (:checkboxInfo) WHERE table_id = :tableiD");
        $sth->execute(array(
               ':checkboxInfo' => $checkboxData[$i],
               ':tableiD' => $tableiD)
        );
    }
}

<form method="post" action="">
    <li><input type="checkbox" name="cbO[]" value="349169846048613138">CheckBox1</li>
    <li><input type="checkbox" name="cbO[]" value="349169846048613136">CheckBox2</li>
    <li><input type="checkbox" name="cbO[]" value="349169846048613140">CheckBox3</li>
    <li><input type="checkbox" name="cbO[]" value="349169846048613141">CheckBox4</li>

    <input type="submit" name"submit" value"Submit"/>
</form>

最佳答案

关于可变数量的项目,从数据库中获取项目并用它们进行循环:

<form method="post" action="">
<ul>
<?php if (!empty($items)) foreach ($itens as $i => $value) { ?>
    <li>
        <input type="checkbox" name="cbO[<?= $i ?>]" value="<?= $value ?>"> 
        CheckBox<?= ($i + 1) ?>
    </li>
<?php } ?>
</ul>
</form>

关于php - 如何将 list 值保存到 MySQL 并能够重新填充复选框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23717467/

相关文章:

python - 使用 python/mysql 进行多查询

MYSQL日期问题,无法转换日期

mysql - SQL - 根据日期显示不同的工作日+循环相应的记录

mysql - 替代 Mysql 中的 UNION 子句

javascript - 兼容性 rsa.js 和 rsa.php

javascript - 计算网络 map 应用程序中栅格的平均值

mysql - 优化非常慢的Mysql查询

mysql - Perl - 将日期从 YEAR-MM-DD 转换为 MONTH、DD、YEAR

php - 将 html 代码分解为多个文件并使用 php 的 include() 的简单有效的方法

php - 这种登录方式安全吗