0
我更新通过复选框选择特定条目一些MySQL的数据,我的代码如下所示:伯爵号的MySQL
<?php
if($_POST['code_approve']){
for($i=0;$i<count($_POST['checkbox']);$i++){
$approval_id = $checkbox[$i];
$sql = "UPDATE table SET status='approved', used='processed' WHERE id='$approval_id'";
$result = mysql_query($sql);
}
if($result){
echo "<meta http-equiv=\"refresh\" content=\"0;URL=table.php\">";
}
}
?>
现在我想知道有多少复选框被选中,并为每个选中的复选框添加25到表“成员”行“余额”。
我想是这样的:
<?php
if($_POST['code_approve']){
for($i=0;$i<count($_POST['checkbox']);$i++){
$approval_id = $checkbox[$i];
$approvedamount = count($_POST['checkbox'])
$approvedx25 = $approvedamount * 25;
$sql = "UPDATE table SET status='approved', used='processed' WHERE id='$approval_id'";
$sql2 = "UPDATE members SET balance = + '$approvedx25'";
$result = mysql_query($sql);
}
if($result){
echo "<meta http-equiv=\"refresh\" content=\"0;URL=table.php\">";
}
}
?>
但是,这并没有在所有的工作,什么是做到这一点的正确方法?
//编辑
请忽略这个问题,它的工作,我只是忘了添加的mysql_query。
我认为你应该删除在where子句中的引号,并使其像这样,对于开始:WHERE id = $ approval_id ..此复选框数组来自何处?!?$ checkbox [$ i] ..我认为你的代码太多缺失 – 2011-12-21 16:37:59
你不应该在循环中运行SQL查询,它不是非常有效。在循环中收集ID,然后使用IN编写一个UPDATE查询。 – kapa 2011-12-21 16:43:08
查看'复选框组'部分:http://www.html-form-guide.com/php-form/php-form-checkbox.html – Minras 2011-12-21 16:45:07