-6ren">
gpt4 book ai didi

php - 提交带有复选框的表单后更新 MySQL 表

转载 作者:行者123 更新时间:2023-11-28 00:48:16 25 4
gpt4 key购买 nike

我正在处理网络表单。

表单正在从 MySQL 数据库加载记录。

这是表格:

<div class="panel-body">
<form id="signupform" class="form-horizontal" role="form" action="<?php $_SERVER['PHP_SELF'] ?>" method="POST" autocomplete="off">
<div id="signupalert" style="display:none" class="alert alert-danger">
<p>Error:</p> <span></span>
</div>
<div class="form-group">
<label for="nombre" class="col-md-3 control-label">Marcas asociadas:</label>
<div class="col-md-9">
<?php
global $mysqli;
$loop = m ysqli_query($mysqli, "SELECT * FROM tb_marcas_vendedor LEFT JOIN tb_marcas ON tb_marcas_vendedor.marca_vendedor = tb_marcas.id_marca
WHERE tb_marcas_vendedor.vendedor_marca = '".$_SESSION[ 'id_usuario']. "'
ORDER BY id_marca" ) or die (mysqli_error($mysqli));
while ($row=m ysqli_fetch_array($loop))
{
if ($row[ 'seleccionado']==1 )
{
echo "<label><input type='checkbox' value=".$row[ 'seleccionado']. " name='sport' checked> ".$row[ 'nombre_marca']. "</label>";
}
else
{
echo "<label><input type='checkbox' value=".$row[ 'seleccionado']. " name='sport' > ".$row[ 'nombre_marca']. "</label>";
}
}
?>
</div>
</div>
<div class="form-group">
<div class="col-md-offset-3 col-md-9">
<button id="btn-signup" type="submit" class="btn btn-info"><i class="icon-hand-right"></i>Actualizar</button>
</div>
</div>
</form>
<?php echo resultBlock($errors); ?>
</div>

这是输出:

enter image description here enter image description here

我需要更新mysql数据。如果用户选中一个框,则值为$row['seleccionado'] 应该是1,如果不勾选,应该是0。如何在提交表单后获取所选行的 ID 并更新表格?

编辑

这是表 tb_marcas_vendedor 结构:

enter image description here

最佳答案

在隐藏元素中添加一个带有 id 的隐藏输入,以及一个使用原生 JavaScript 更新隐藏元素的普通复选框:

<input type='hidden' name='" . $row['id_marca_vendedor'] . "' value='" . $row[ 'seleccionado'] . "'><input type="checkbox" onclick='this.previousSibling.value=1-this.previousSibling.value'>

确保这些元素之间没有空格。这将确保即使是未检查的值也会被考虑在内。

如果将 id_marca_vendedor 附加到输入字段的名称字段,则可以在服务器端循环遍历变量并在 POST 部分获取结果/id:

// Loop over each item in the form.
foreach($_POST as $name => $value) {

// Get the id and value
$id = $name;
$selection = $_POST[$name];

// Database query goes here

}

Source

编辑:更新为包括@jeff 的未检查值点。

关于php - 提交带有复选框的表单后更新 MySQL 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49081398/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com