yy感谢大哥航母视频:ASP用复选框删除的问题!

来源:百度文库 编辑:神马品牌网 时间:2024/05/09 19:23:04
<!-- #include file="conn.asp" -->

<% set rs=server.CreateObject("adodb.recordset")
exec="select * from news order by nclass asc,id desc"
rs.pagesize=10
rs.open exec,conn,3,2
%>

<%
do while not rs.eof
%>

是否删除:
<%if rs("delete")=-1 then%>
<input type="checkbox" name="<%=rs("id")%>" value="on">
<%else%>
<input type="checkbox" name="<%=rs("id")%>" value="off">
<%end if%>

<%
rs.movenext
loop
%>

<input type="submit" value="提 交" name="B1">
<input type="reset" value="清 除" name="B2">

</form>

-----------------------------------------------------------------

<%
if Request.ServerVariables("REQUEST_METHOD")="POST" then
if not rs.bof then
rs.movefirst
end if

do while not rs.eof

n=trim(cstr(rs("news_id")))
if request.form(n)="OFF" then
rs.delete
rs.update
end if

rs.movenext
loop

response.redirect "delete.asp"
rs.close
end if
response.flush
%>

-----------------------------------------------------------------

没有报错 但是删除无效 急求解!谢谢
<%if rs("delete")=-1 then%>
源程序代码的意思是 判断删除标志 添加的时候 默认的是值是
delete=-1

我也不很明白 不过我弄了个很简单的就可以运行

<input type="checkbox" name="id" value="<%=rs("id")%>">

--------------------------------------------------------
<%
exec="delete * from news where id in ("&request.Form("id")&")"
conn.execute exec

%>
--------------------------------------------------------

我确实也不明白源程序为什么那么麻烦

你的程序本身就不对吧?
rs("delete")=-1 代表什么呢???每删除了一条数据,再把delete字段写入"-1"???不可能吧....或者是代表默认删除的对象?

●附:如果你真的确认你的程序设计没问题,那么请尝试修改一些书写方式:

[01]

if request.form(n)="OFF" then
改成:
if tirm(ucase(request.form(n)))="OFF" then

[02]

<%
do while not rs.eof
%>
前面添加上一个<form>表签?

我的一个实例

-----------删除核心代码----------------
selectid=request.form("isDel")
if selectid<>"" then
selectid = Replace(selectid,",",",")
For Each selectid in Split(selectid,",")
set rs=server.CreateObject("adodb.recordset")
rsStr="select * from info where info_id ="&selectid
rs.open rsStr,MM_conn_STRING,1,3
rs.delete
rs.update
rs.close
set rs=nothing
next
response.Write "<script LANGUAGE='javascript'>alert('信息删除成功');window.location='infolist.asp';</script>"
response.End
end if

-----------------界面代码-------------------------------
set rs=server.CreateObject("adodb.recordset")
dim rsSql
rsSql = "* from info"
rs.open rsSql,MM_conn_STRING,1,1
while not(rs.eof)
<input type="checkbox" name="isDel" value="<%=rs("info_id")%>">
wend

<input type="submit" value="提 交" name="B1">
<input type="reset" value="清 除" name="B2">

-----------------------------------------
精简过的核心代码,不懂联系2162010