Php 无法获取POST变量的计数
我想在数据库中插入选定的行,但无法获取复选框的计数。然而,在我的一个表格中,我正在更新记录,我可以得到计数,但在这里我不能。代码如下Php 无法获取POST变量的计数,php,arrays,count,isset,Php,Arrays,Count,Isset,我想在数据库中插入选定的行,但无法获取复选框的计数。然而,在我的一个表格中,我正在更新记录,我可以得到计数,但在这里我不能。代码如下 <tr class="odd gradeX"> <td> <input type="checkbox" class="checkboxes" value="<?php echo $row['student_id']; ?>" name="ids[]" /> </td>
<tr class="odd gradeX">
<td>
<input type="checkbox" class="checkboxes" value="<?php echo $row['student_id']; ?>" name="ids[]" />
</td>
<td>
<?php echo $row['first_name']." ".$row['last_name'];?>
</td>
<td>
<?php echo $row['father_mobile'];?>
</td>
<td class="hidden-480">
<a href="mailto:<?php echo $row['email'];?>">
<?php echo $row['email'];?>
</a>
</td>
<td class="hidden-480">
<?php echo $row['address'];?>
</td>
<td class="center hidden-480">
<?php echo $row1['track_name'];?>
</td>
<td>
<?php echo $row2['level_name'];?>
</span>
</td>
</tr>
<?php
if(isset($_POST['move']))
{
echo "count is" . count($_POST["ids"]);
for($i=0; $i<count($_POST["ids"]); $i++){
echo $sql = "inset into tbl_student_batches set bacth_id='".$_POST['batch_id']."',student_id='".$_POST['ids']."'";
if (mysql_query($sql)) {
$msg = "Selected students moved to next batch successfully";
header("location:convert_level?msg=$msg");
}else{
$errmsg = ("Error while moving.". mysql_error());
}
}
}
你可以这样试试
$studentIds = explode(' ', $_POST['ids']);
$totalId= count($studentIds);
在post请求中,您是否确实在服务器上获得id
?您的移动
设置是否使您的条件为真?添加print\r($\u POST)
在您的if(isset($\u POST['move'])
前面,检查您在请求中得到了什么,以及id是否存在以及它包含什么。此外,您的代码易受SQL注入攻击。您在哪里设置POST['move']
?您似乎没有显示所有相关的代码,您似乎没有一个
对象,您使用的是一个不推荐的MySQL,应该养成使用MySQLi或PDO的习惯(请参见)不,我没有ID。实际上,ID正在表中的for循环中打印,如代码所示。您可以发布整个表单吗?它是动态生成的吗?还是有固定数量的复选框?你定了方法吗?很多关于表单的问题。动态生成的复选框