我已经广泛搜索但找不到答案...希望有人可以提供帮助:
我是新手PHP和MySQL用户,并且有复选框问题。
我有一个包含复选框的简单HTML页面。 该页面链接到PHPmyadmin中的MySQL数据库。
HTML是:
<html><p>User1<input type="checkbox" name="Users[]" id="Users1" value="1"/></p>
<p>User2<input type="checkbox" name="Users[]" id="Users2" value="2"/></p>
<p>User3<input type="checkbox" name="Users[]" id="Users3" value="3"/></p>
<p>User4<input type="checkbox" name="Users[]" id="Users4" value="4"/></p></html>
我想要的是填写表单的人检查一个或多个值,然后检查值以PHPmyadmin显示,以便我可以导出它们。
但是,使用这个PHP时:
$values = implode(',', $_POST['Users']);
我在PHPmyadmin中获得的只是“数组”,我无法弄清楚如何显示实际值。
提前致谢,
答案 0 :(得分:1)
您可以通过循环检查所有值:
$userChecked = $_POST['Users'];
for ($i=0; $i<count($userChecked ); $i++) {
echo( ($i+1) . ") " . $userChecked [$i] . "<br/>");
}
这将显示所有ID。您可以将它们插入数据库或执行您想要的操作,而不是回显值。值将循环内部:$ userChecked [$ i]
@Daok:是的,显示值 在结果页面上,但在 PHPmyadmin,它仍然表明 “阵列”。我如何让它显示 值?
PhpMyAdmin只是管理php / mysql的工具。我猜你的意思是你的数据库中写有“数组”?如果你确实想要一个字段(varchar)中的所有值,那么你需要implode
:
$comma_separated = implode(",", $_POST['Users']);
//Code here to Insert to you database with ...value($comma_separated)...
如果每个条目需要1行:
$userChecked = $_POST['Users'];
for ($i=0; $i<count($userChecked ); $i++) {
//Insert Sql statement here with value($userChecked [$i])
}
答案 1 :(得分:0)
尝试
$values = implode(',', (array)$_POST['Users']);
或
Users=array();
$values = implode(',', $_POST['Users']);