在php查询表中添加一个复选框

时间:2014-04-16 13:26:59

标签: php

我的代码到目前为止。数据被正确拉出

if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

$result = mysqli_query($con,"SELECT * FROM Request");

echo "<table border='1'>

<tr>
<th>First Name</th>
<th>Last Name</th>
<th>Prayer Request</th>
<th>Deactivate Request</th>
</tr>";

while($row = mysqli_fetch_array($result))
  {
  echo "<tr>";
  echo "<td>" . $row['Reg_F_Name'] . "</td>";
  echo "<td>" . $row['Reg_L_Name'] . "</td>";
  echo "<td>" . $row['Reg_Request'] . "</td>";
  echo "<td><input name=\"checkbox[]\" type=\"checkbox\" id=\"checkbox[]\" value=\"".$rows['Reg_ID']. "\" /></td>";  
  echo "</tr>";
  }
echo "</table>";

echo "<input type='submit' name='submit' value='Submit'>";

mysqli_close($con);

?>

<?php

$del_id = $_POST['checkbox']; 

for($i=0;$i<$count;$i++){
$del_id = $checkbox[$i];
$sql = "Update Request  set Reg_Status=0 WHERE ='$Reg_ID'";
$result = mysql_query($sql);
}


?>
<br /><br />
</div>

单击“提交”时没有任何反应。我希望它为每个单击的复选框更新reg_Status为0。那么我的问题是什么。提前感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

您应该在将来提供错误消息。

这可能是您代码中的问题:

echo "<td>" . <input name="checkbox[]" type="checkbox" id="checkbox[]" value="<? echo $rows['Reg_ID'] . "</td>";

“”之后有语法错误。你不需要在这里结束字符串,你必须转义输入元素中的引号,这样PHP就不会将它们与字符串的结尾混淆。

echo "<td><input name=\"checkbox[]\" type=\"checkbox\" value=\"".$rows['Reg_ID']. "\" /></td>";

现在我将字符串的第一部分与$ rows ['Reg_Id']变量的值和字符串的第二部分“连接”起来。最后,您应该只在一个文档中使用一次id。

最后,看一下PHP手册:

Click

答案 1 :(得分:0)

你是一个循环,然后:

 echo "<td>" . <input name="checkbox[]" type="checkbox" id="checkbox[]" value="<? echo $rows['Reg_ID'] . "</td>";

但在你的情况下,id不是唯一的。 如果您的表格中有唯一ID,我会将此ID插入&#39; []&#39; -brackets。 此外,引号设置不正确 - 试试这样:

echo '<td><input name="checkbox[]" type="checkbox" id="checkbox['.$rows['Reg_ID'].']" value=".$row[something].'</td>';