ASP问题:为什么二级目录无法编辑

设计一个档案管理系统,三级结构是:案卷-分案卷-档案案卷表ClassDossier有案卷号ClasssID,案卷名称ClassTitle类型分别为:int,varchar... 设计一个档案管理系统,三级结构是:案卷-分案卷-档案
案卷表ClassDossier有案卷号ClasssID,案卷名称ClassTitle 类型分别为:int, varchar
分案卷表SubDossier有案卷号ClasssID,分案卷号SubID,分案卷名称SubTitle 类型分别为:int,int, varchar
问题是:
在没有建立表之间关联的情况下
前一页通过<td ><a href="SubDossierManage.asp?classid=<%=Rs("classid")%>"><%=Rs("classtitle")%>
</td>
将一级目录:案卷号classid传递给本页面

本页代码:
<%
Dim classid
classid=Request("classid")
Set Rs = Server.CreateObject("ADODB.RecordSet")
Sql="Select * From SubDossier where ClassID="&ClassID&" Order By SubID "
Rs.Open Sql,conn,3,3
If Rs.Eof And Rs.Bof Then
Response.Write "<tr><td height='30' bgcolor='#FFFFFF'>该案卷还没有分案卷!"
Response.Write "</td></tr>"
Else
Do While not Rs.Eof
%>
<tr bgcolor="#FFFFFF">
<td height="30" bgcolor="#FFFFFF" align="center"><a href="ArchivesManage.asp?classid=<%=Rs("classid")%>&SubID<%=Rs("SubID")%>" target="_blank">
<%
Response.Write Rs("SubTitle")
%></a>
</td>
<td align="center" bgcolor="#FFFFFF">
<a href="SubDossierManage.asp?action=Edit&classid=<%=classid%>&SubID=<%=Rs("SubID")%>"><img src="Images/edit.jpg" width="15" height="15" border="0">修改</a>  
</td>
</tr>
<% Rs.MoveNext
Loop
%>
<%End If
Rs.Close
Set Rs=nothing
%>

<%
classid=Request("classid")
SubID=Request("SubID")
If Request("action")="SaveEdit" Then
Call SaveEdit()
ElseIf Request("action")="SaveAdd" Then
Call SaveAdd()
End If
%>
<% If Request("action")="Edit" Then
Set Rs = Server.CreateObject("ADODB.Recordset")
Sql="Select SubID,SubTitle From SubDossier Where classid="&classid&" and SubID="&Rs("SubID")
Rs.Open Sql,conn,3,3
%>
<tr align="center" bgcolor="#FFFFFF"><form name="form1" method="post" action="SubDossierManage.asp?action=SaveEdit&classid=<%=classid%>&SubID=<%=SubID%>">
<td height="30" bgcolor="#FFFFFF" colspan="4">修改分案卷名称:
<input name="title" type="text" size="23" value="<%=Rs("SubTitle")%>"><input type="submit" name="Submit" value="确定修改">
</td></form>
</tr>
<% Rs.Close
Set Rs=nothing
End If
%>

显示分案卷正常,当修改案卷时,
<% If Request("action")="Edit" Then
Set Rs = Server.CreateObject("ADODB.Recordset")
Sql="Select SubID,SubTitle From SubDossier Where classid="&classid&" and SubID="&Rs("SubID")
Rs.Open Sql,conn,3,3
没有找到项目?
照各位的改了,但是还是有问题:
现在能正确修改分案卷号,但依然报错:修改完了返回时
Sql3="Select SubID,SubTitle From SubDossier Where classid="&classid&" and SubID="&SubID
Rs3.Open Sql3,conn,3,3
错误类型
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC SQL Server Driver][SQL Server]第 1 行: '=' 附近有语法错误。

另外补充说明Classid是案卷编号从上一页面传递过来的,SubID是分案卷编号,从SubDossier表中读出来的。
谢谢各位!
展开
 我来答
sygg008
2008-10-27 · TA获得超过295个赞
知道小有建树答主
回答量:443
采纳率:100%
帮助的人:178万
展开全部
Sql="Select SubID,SubTitle From SubDossier Where classid="&classid&" and SubID="&Rs("SubID")
这句有问题槐启森啊,记录集名称混乱,碰到一个旁激页面中用到多个记录集时,为不致混乱,记录集名称铅亩可以这样取RS1、RS2...,或者RSClass、RSSub...这样易懂的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
宾揽02
推荐于2016-04-03 · TA获得超过240个赞
知道小有建树答主
回答量:232
采纳率:0%
帮助的人:94.2万
展开全部
你修改成功后返回时还得把 classid 传回去.

显示分案卷正常,当纯轿修做没肆改案卷时,
<% If Request("action")="Edit" Then
SubID=request("SubID")
Set Rs = Server.CreateObject("ADODB.Recordset")
Sql="Select SubID,SubTitle From SubDossier Where classid="&classid&"察租 and SubID="&SubID
Rs.Open Sql,conn,3,3

这样写就应该可以了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
z6220601
2008-10-27 · TA获得超过378个赞
知道小有建树答主
回答量:428
采纳率:0%
帮助的人:569万
展开全部
显示隐圆分案卷正常,当修改案卷时,
<% If Request("action")="Edit" Then
Set Rs = Server.CreateObject("ADODB.Recordset")
Sql="Select SubID,SubTitle From SubDossier Where classid="&classid&" and SubID="&Rs("SubID")
Rs.Open Sql,conn,3,3
没有找到枣慧项目?

这句里面的Sql中,最后的Rs("SubID") 是哪里来的???看你上面写的东西,这里的SubID的值应该是从凳携答参数中获取的,而不是从结果集中取吧

应该是用request("SubID")
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百丽佳人
2008-10-27 · TA获得超过688个赞
知道小有建树答主
回答量:386
采纳率:0%
帮助的人:427万
展开全部
Sql="斗数埋毕键Select SubID,SubTitle From SubDossier Where classid="空蚂&classid&" and SubID="&SubID
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式