注册 登录
编程论坛 ASP技术论坛

[求助] 动态新闻发布的代码中的问题

zcy85611 发布于 2009-09-26 19:40, 594 次点击
程序代码:
        <%sql="select * from info"
        rs.open sql,conn,1,1
              if not rs.eof then
                  if request("page")<>"" then
                      qstr=left(request.QueryString,instr(lcase(request.QueryString),"page")-1)
                      if isnumeric(request("page")) then page=int(request("page")) else page=1
                  else
                      if request.querystring<>"" then qstr=request.querystring&"&"
                      page=1
                  end if
              rs.pagesize=25
              if rs.recordcount<=rs.pagesize then page=1    '防止非法访问
              rs.AbsolutePage=page
              for i=1 to rs.pagesize%>


我是初学者,在看这段代码的过程中,我有一些不明白的地方,请大家帮忙看看,谢谢!

1.request("page")中的page,代码中没有任何一个定义了它,数据库中也没有它,但是为什么能够直接用?是不是request("page")是一个特殊的用法?

2. qstr=left(request.QueryString,instr(lcase(request.QueryString),"page")-1)
   if isnumeric(request("page")) then page=int(request("page")) else page=1
这两段我就完全看不懂了,请朋友们帮我分析一下这两段代码,谢谢!
2 回复
#2
myosotis2009-09-27 17:14
1。asp中变量的运用不那么严格,变量可以不定义而直接使用
2。qstr=left(request.QueryString,instr(lcase(request.QueryString),"page")-1)
    lcase是把字符串中的大写字母转换成小写字母
    instr是查找“page"在request.querystring中的位置
    qstr=left(request.QueryString,instr(lcase(request.QueryString),"page")-1)
    返回地址中?号后面page前面的字符串
    if isnumeric(request("page")) then page=int(request("page")) else page=1
    如果request("page")是数字,则将request("page")转换成Int类型的整数,否则page=1
#3
yms1232009-09-27 17:59
楼主应该去学习熟练ASP的几个关键内置对象
Request
Response
Application
Session
Server
这几个内置对象的使用是很关键的,ASP学习里必须会的基础知识。
1