先創建del.php文件:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>刪除</title>
</head>
<body>
<form action="sc.php" method=post>
<table border=1 width=60% align=center>
<caption></caption>
<th>選項</th><th>學號</th><th>姓名< /th><th>性別</th><th>電話</th>
<?php
$link=mysql_connect("localhost","root","123456");
mysql_select_db("logisticsdb0123");
mysql_query("set names utf8");
$exec="select * from logistics_accident";
$result=mysql_query($exec);
while($rs=mysql_fetch_object($result))
{
$id=$rs->ID;
$name=$rs->Name;
$sex=$rs->PlaceAddress;
$phone=$rs->Remark;
?>
<tr>
<td> <input type="checkbox" name="de[]" value="<?php echo $id?>"/></td><td><?php echo $id?></td><td><?php echo $name?></td><td><?php echo $sex?></td><td><?php echo $phone?></td>
</tr>
<?php
}
mysql_close();
?>
</table>
<center><input type="submit" value="刪除"></center>
</form>
</body>
</html>
在創建sc.php
<?php
$link=mysql_connect("localhost","root","123456");
mysql_select_db("logisticsdb0123");
$id=$_POST['de'];
foreach($id as $ide){
$exec="delete from logistics_accident where ID='$ide'";
echo $exec;
$result=mysql_query($exec);
echo $result;
if((mysql_affected_rows()==0) or (mysql_affected_rows==-1))
{
echo "沒有找到記錄,或者刪除時出錯";
exit;
}
else{
echo "信息已經刪除";
}
}
mysql_close();
?>
數據庫數據:
-- phpMyAdmin SQL Dump
-- version 2.11.6
-- http://www.phpmyadmin.net
--
-- 主機: localhost
-- 生成日期: 2014 年 10 月 29 日 08:50
-- 服務器版本: 5.0.51
-- PHP 版本: 5.2.6
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
--
-- 數據庫: `logisticsdb0123`
--
CREATE DATABASE `logisticsdb0123` DEFAULT CHARACTER SET gb2312 COLLATE gb2312_chinese_ci;
USE `logisticsdb0123`;
-- --------------------------------------------------------
--
-- 表的結構 `logistics_accident`
--
CREATE TABLE `logistics_accident` (
`ID` varchar(5) NOT NULL,
`Name` varchar(50) NOT NULL,
`PlaceTime` date NOT NULL,
`Time` date NOT NULL,
`PlaceAddress` varchar(50) NOT NULL,
`Remark` varchar(100) NOT NULL,
PRIMARY KEY (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=gb2312;
--
-- 導出表中的數據 `logistics_accident`
--
INSERT INTO `logistics_accident` (`ID`, `Name`, `PlaceTime`, `Time`, `PlaceAddress`, `Remark`) VALUES
('A001', '123132', '2014-09-17', '2014-09-05', '1313', '0123');
這個是很常見的代碼,也很簡單啊,像你這種情況,可以使用一個hidden input,點擊刪除按鈕的時候,檢測哪些個記錄的checkbox被選擇中,把這些記錄的ID放到那個hidden input中。然後提交。也可以一個checkbox跟一個hidden input,選擇中一個checkbox的時候,對應的hidden input置值為記錄的ID,取消就置空。而這幾個hidden input用一個相同的name。
比如rs是返回的記錄集:
do until rs.eof
'寫checkbox
response.write "<input type=checkbox onclick=""if (this.checked) document.all.todel_"&rs("id")&".value='"&rs("id")&"';else document.all.todel_"&rs("id")&".value=''"">"
'寫hidden
response.write "<input type=hidden name=todel id=todel_"&rs("id")&">"
……'其他處理代碼
rs.movenext
loop
處理提交後的代碼只要檢測request.form("todel")或request.querystring("todel")或request("todel")即可。取得了ID號還不會刪除記錄,那應該不可能吧?
asp 如何實現用多個復選框選中,一次刪除多條記錄呢?
方法一
For Each items in Request.Form("Checkbox")
sql=""
conn.execute(sql)
next
方法二
就是用split(str,",")分開一條條的刪除,代碼如
needdelete =request("checkbox")
array =split(needdelete,",")
for i=0 to ubound(array)
conn.execute(sql)
next
方法三
就是使用sql了,delete from tablename where id in("&request("checkbox")&")
conn.execute(sql)