当我选中复选框时,是否可以在我的数据库中编辑我的状态字段?
我想要的是,当我在表格中检查多行时,它会在我提交后自动将数据库中row ['status']的值更新为是。
就像这样,
表APP
counter | status
100001 |
100002 |
100003 |
100004 |
当我检查100001和100002时,状态值变为是。
counter | status
100001 | yes
100002 | yes
100003 |
100004 |
以下是我的简短代码。
<form name="form1" method="post" action="">
<?php
$mysqli = new mysqli("localhost", "root", "", "app");
$result1 = $mysqli->query("SELECT * FROM APP");
echo'<table id="tfhover">
<tr>
<th>status</th>
<th></th>
</tr>';
while($row = $result1->fetch_assoc()){
echo
'<tr>
<td>'.$row['status'].'</td>
<td><input name="checkbox[]" type="checkbox" id="checkbox[]" value="'.$row['counter'].'"></td>
</tr></table>';
?>
<input id='edit' type='submit' class='button' name='edit' value='Edit'/>
</form>
<?
if(isset($_POST['edit']))
{
}
?>
如果可以这样做?帮忙?
答案 0 :(得分:0)
name="checkbox[]"
将在$ _POST [“复选框”]中创建一个数组供您使用。该数组将包含您选择的所有复选框的值。
答案 1 :(得分:0)
可能是您可以尝试此代码 在PHP
<?
if(isset($_POST['edit']))
{
if(is_array($_POST['checkbox'])){
$status = "yes";
foreach($_POST['checkbox'] as $key=>$value){
$stmt = $mysqli->prepare("UPDATE APP SET status=? WHERE counter= ?");
$stmt->bind_param('ss', $status, $value);
$stmt->execute();
}
}else{
echo "No changes";
}
}
?>