读书人

两段代码合并重复利用代码有关问题

发布时间: 2012-03-16 16:34:56 作者: rapoo

两段代码合并,重复利用代码问题


目的是要添加大类和小类
两段代码如下所示

但是这两段
很多代码都重复
其中 bcls scls 这是要传入数据库里的参数 就是类别名称

我想把让代码重复利用 最好是合并

可以做到吗?


'添加大类
Sub bcls
dim num
Set rs = Server.CreateObject("ADODB.RecordSet")
sql = "SELECT * FROM [sort] where scls is null order by num desc"
rs.Open Sql,Conn,1,2

if rs.eof then
num="01"
else
num=CStr(rs("num")+1)
num=right("00"&num,2)
end if

rs.addnew
rs("num") = num
rs("bcls") = Request("bcls")
rs.Update
rs.Close
Set rs=Nothing
Conn.Close
Set Conn=Nothing

Response.Write "<script language=javascript>alert('大类添加成功!');"
Response.Write "window.document.location.href='sort.asp';</script>"
end Sub

'添加小类
Sub scls
dim num
Set rs = Server.CreateObject("ADODB.RecordSet")
sql = "SELECT * FROM [sort] where bcls='"&request("bslt")&"' order by num desc"
rs.Open Sql,Conn,1,2

if rs.eof then
Response.Write "<script language=javascript>alert('请先添加大类!');"
Response.Write "window.document.location.href='sortadd.asp';</script>"
elseif rs("scls")<>"" then
num=CStr(rs("num")+1)
num=right("0000"&num,4)
else
num=CStr(rs("num"))&"01"
end if

rs.addnew
rs("num") = num
rs("bcls") = Request("bslt")
rs("scls") = Request("scls")
rs.Update
rs.Close
Set rs=Nothing
Conn.Close
Set Conn=Nothing

Response.Write "<script language=javascript>alert('小类添加成功!');"
Response.Write "window.document.location.href='sort.asp';</script>"
end Sub
%>

[解决办法]
抢个沙发吧!
你这个页面应该是2个表单,在form的action中后面跟一个参数比如XXX.ASP?class=addBig或者XXX.ASP?class=addSmall 。

然后在XXX.asp中开头request("class")

sub addClass
dim class, bigClass, smallClass, classType
if class="addbig" then
bigClass=request(大类的名字)
sql = "sql语句"
classType = "大类"
elseif class="addSmall" then
bigClass=request(大类的名字)
if(大类的名字)=="" then
response.write("java代码,提示请先选择大类/添加大类")
跳出sub,注:最好不要在这判断是否选择了或者添加了大类,要让上一个页面去判断。
end if
smallClass=request(需要添加的小类的名字)
sql = "sql语句"
classType = "小类"
end if
//主体合并部分
dim num
Set rs = Server.CreateObject("ADODB.RecordSet")
rs.Open Sql,Conn,1,2 //sql上面已经有了。
//num部分我就不写了。。建议你用自增字段吧。
rs.addnew
rs("bcls") = bigClass
if(class==addSmall)then
rs("scls") = smallClass
endif
rs.Update
rs.Close
Set rs=Nothing
Conn.Close
Set Conn=Nothing

Response.Write "<script language=javascript>alert('" & classType & "添加成功!');"
Response.Write "window.document.location.href='sort.asp';</script>"

//主体合并部分结束
end sub


好久不写代码了,有些生疏了,有些语法可能有点小问题,楼主意会吧。

读书人网 >VB

热点推荐