Php 循环遍历数组并检查是否设置了复选框
我在我的页面上有一个按二进制方式生成的表(取决于查询的结果),其中包含入口和复选框。现在我将checkboxname传递给一个数组。数组中的值如10,25,26。。。在里面。该值(checkboxnames)也是第二个数据库上具有字段“entry_ID”的字段标识符 我现在要做的是检查动态生成的表上的复选框是否为“开”,并用“1”更新依赖行中的字段(review_done) 我的代码看起来很简单:(而且不起作用)Php 循环遍历数组并检查是否设置了复选框,php,arrays,checkbox,Php,Arrays,Checkbox,我在我的页面上有一个按二进制方式生成的表(取决于查询的结果),其中包含入口和复选框。现在我将checkboxname传递给一个数组。数组中的值如10,25,26。。。在里面。该值(checkboxnames)也是第二个数据库上具有字段“entry_ID”的字段标识符 我现在要做的是检查动态生成的表上的复选框是否为“开”,并用“1”更新依赖行中的字段(review_done) 我的代码看起来很简单:(而且不起作用) if(isset($\u POST['maintget'])) { $rows=$
if(isset($\u POST['maintget']))
{
$rows=$\会话[“countRows”];
$chkb_names=$_会话[“arr_chkb_names”];
//打印($chkb\u名称);
对于($c=0;$cprepare($sql);
$result->bind_参数('ii',1,$chkb_名称[$c]);
$result->execute();
}
}
}
任何帮助都很好!!!THX您使用的是错误的$\u POST()
。$\u POST
是一个数组
这应该行得通
if (isset($_POST['maintget']))
{
$rows = $_SESSION["countRows"];
$chkb_names = $_SESSION["arr_chkb_names"];
//print_r($chkb_names);
for ($c = 0; $c<$rows; $c++)
{
if(isset($_POST[$chkb_names[$c]])
{
$sql = 'UPDATE testDB SET review_done=? WHERE entry_ID =?';
$result = $db->prepare( $sql );
$result->bind_param('ii', $review=1,$chkb_names[$c]);
$result->execute();
}
}
}
if(isset($\u POST['maintget']))
{
$rows=$\会话[“countRows”];
$chkb_names=$_会话[“arr_chkb_names”];
//打印($chkb\u名称);
对于($c=0;$cprepare($sql);
$result->bind_参数('ii',$review=1,$chkb_名称[$c]);
$result->execute();
}
}
}
“不工作”的意思是?有什么错误…您需要正确地开始调试,以查看错误所在。请遵循以下步骤
if (isset($_POST['maintget']))
{
$rows = $_SESSION["countRows"];
$chkb_names = $_SESSION["arr_chkb_names"];
//print_r($chkb_names);
for ($c = 0; $c<$rows; $c++)
{
if(isset($_POST[$chkb_names[$c]])
{
$sql = 'UPDATE testDB SET review_done=? WHERE entry_ID =?';
$result = $db->prepare( $sql );
$result->bind_param('ii', $review=1,$chkb_names[$c]);
$result->execute();
}
}
}