感谢您的光临! 所以在数据库上我有表 1 和表 2,它们具有相同的列。 我想要做的是,管理员检查 Table2 上请求的更改,并通过每列的复选框来决定哪些是可以的,哪些是不行的。
如果原始表和修改后的表之间存在更改,单元格会将其颜色变为绿色并自动检查本身... 到目前为止一切顺利,但是。
如果我按下“提交”按钮,我似乎没有捕获到选中复选框的值,到目前为止,我捕获到的最大值是“ARRAY”值,从字面上看,不是内容,而是“ARRAY”,就像这样,每个单元格的代码太长,现在我专注于使第一行正确,以便我可以将其实现到其他单元格,所以它看起来像这样:(抱歉,它是一团糟)
<tr>
<td style="text-align: center">Codigo de Cliente</td>
<td style="text-align: center"><?php echo $row1['idClientes']; ?></td>
<td <?php if($row1['idClientes']===$row2['idClientes'])echo "bgcolor='green' ";?> style="text-align: right"><?php echo $row2['idClientes']; ?><input type="checkbox" name="checkbox[]" id="checkbox" value:"<?php echo $row2['idClientes']; ?>" <?php if($row1['idClientes']===$row2['idClientes'])echo "checked='checked' onclick='this.checked=!this.checked;' value:'".$row2['idClientes']."'";?> ></td>
</tr>
这是 PHP
<?php if(isset($_POST['submit']))
{
$idClientes =$_POST['checkbox'];
echo "<script>
alert('$idClientes'),
</script> ";}
该 echo/警报给了我“数组”作为结果,而它应该是“14359”。
有什么建议吗?提前致谢! PD:如果解决方案不包括 Jquery/Javascript,那就太棒了,我还不熟悉这些语言,所以现在只有 php/mysql/html。
最佳答案
正如评论所述,您的表单输入具有数组名称:
<input type="checkbox" name="checkbox[]" value="14359" />
<input type="checkbox" name="checkbox[]" value="2222222" />
<input type="checkbox" name="checkbox[]" value="dvdza@whatever.com" />
如果选中一对,将生成如下数组:
Array
(
[checkbox] => Array
(
[0] => 14359
[1] => dvdza@whatever.com
)
)
如果您想保留数组名称但要具体指定标签,则需要使数组具有关联性:
<input type="checkbox" name="checkbox[idClientes]" value="14359" />
<input type="checkbox" name="checkbox[idSomethingElse]" value="2222222" />
<input type="checkbox" name="checkbox[email]" value="dvdza@whatever.com" />
选中后会给您:
Array
(
[checkbox] => Array
(
[idClientes] => 14359
[email] => dvdza@whatever.com
)
)
这样你就可以这样做:
if(isset($_POST['checkbox']['idClientes']))
$idClientes = $_POST['checkbox']['idClientes'];
关于php - 从数据库渲染复选框,然后更新数据库(如果修改),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41009319/