Php 要使用复选框和“保存”按钮更新多个记录吗
我正在使用两个文本框搜索一些记录,然后更新数据库中选定的记录。我可以看到选中复选框的值行id,但当我想在数据库中获取更新值时,它会给出0,即在数组中不显示任何记录 这是我的密码Php 要使用复选框和“保存”按钮更新多个记录吗,php,Php,我正在使用两个文本框搜索一些记录,然后更新数据库中选定的记录。我可以看到选中复选框的值行id,但当我想在数据库中获取更新值时,它会给出0,即在数组中不显示任何记录 这是我的密码 if($_POST["search"]) { $nitnumber = $_POST["nitnumber"]; $workno = $_POST["workno"]; $query = "select * from print where nit = $nitnumber and work =
if($_POST["search"])
{
$nitnumber = $_POST["nitnumber"];
$workno = $_POST["workno"];
$query = "select * from print where nit = $nitnumber and work = $work";
$result = mysql_query($query) or die ("<font color =red>NIT Number and/or Work Number is Missing</font>");
$count = mysql_num_rows($result);
if($count == 0)
echo "<font color=red>Record not found</font>";
else
{
while($record = mysql_fetch_assoc($result))
{
?>
<tr class="odd">
<td><div align="center"><?php echo $record['a']; ?></div></td>
<td><div align="center"><?php echo $record['b']; ?></div></td>
<td><div align="left"><?php echo $record['c']; ?></div></td>
<td> <div align="left">
<?php
enter code hereecho $record["d"];
?>
</td>
<td>
<input name="checkbox[]" id="checkbox[]" type="checkbox" value="<?php echo $record[$id];?>">
<?php echo $record["id"];?>
</td>
<?php } } }?>
<tr>
<td colspan="5" align="right"> <input type="submit" value="Save" name="save"> </td>
</tr>
<?php
if ($_POST['save'])
{
$num_chkboxes=count($_POST['checkbox']);
for($i=0; $i<$num_chkboxes; $i++){
$complete = intval($checkbox[$i]);
echo $complete;
var_dump($complete);
echo $updateSQL = "UPDATE toDo SET complete=1, WHERE toDoId=$complete";
//$Result1 = mysql_query($updateSQL, $FamilyOrganizer) or die(mysql_error());
}
}
?>
if($\u POST[“search”])
{
$nitnumber=$_POST[“nitnumber”];
$workno=$_POST[“workno”];
$query=“从打印中选择*,其中nit=$nitnumber和work=$work”;
$result=mysql_query($query)或die(“缺少NIT编号和/或工作编号”);
$count=mysql\u num\u行($result);
如果($count==0)
回显“未找到记录”;
其他的
{
而($record=mysql\u fetch\u assoc($result))
{
?>
首先,当您填写复选框的值时,问题开始出现:
<input name="checkbox[]" id="checkbox[]" type="checkbox" value="<?php echo $record[$id];?>" />
必须为每个元素提供唯一的ID:
id="checkbox-1"
id="checkbox-2"
//用这样的复选框
。它们不再被维护。请参阅?改为了解,然后使用或-将帮助您决定使用哪一个。如果您选择PDO,。我提供了不同的ID,并使用了与您提到的相同的代码,但结果仍然相同。在完整变量中获取0。请参阅我编辑的答案。脚本中存在多个问题。如何获取每个复选框的唯一值?当您在输入字段中为值留有空格时?实际上,我正在尝试将行id传递给所选项目的查询。我刚刚给了您一个示例,您可以使用任何值,如..Casting
for($i = 0; $i < count($_POST['checkbox']); $i++){
$complete = intval($_POST['checkbox'][$i]);
//echo $complete;
//var_dump($complete);
echo $updateSQL = "UPDATE toDo SET complete=1, WHERE toDoId=$complete";
}
id="checkbox[]"
id="checkbox-1"
id="checkbox-2"
<?php
if ($_POST['save'])
{
$checkbox1 = $_POST['chk1'];
$selected_checkbox = "";
foreach ($checkbox1 as $checkbox1)
{
$selected_checkbox .= $checkbox1 . ", ";
}
$selected_checkbox = substr($selected_checkbox, 0, -2);
$updateSQL = "" // your update query here
}
?>
<input type="checkbox" name="chk1[]" value=""> // take checkboxes like this