ASP入门学习(一)准备阶段 全新时代

Asp动态服务器页面,是使用IIS部署运行的脚本语言。开发语言主要是VBScript语法。下面主要说说开发asp程序需要注意的地方和与数据库连接的基本代码格式,inc包含文件,函数,过程定义,页面编码格式设置等。

一 准备工作

1.开发asp IDE软件:推荐使用ASP Studio 版本1.45

2.设置IE脚本调试模式,方便查询IIS抛出的服务器端错误信息,否则只会显示简单的Http 500 服务器内部错误等。不方便程序的调试。

IE ->工具 ->Internet选项 ->高级 ->禁用脚本调试(Internet Explorer)不选(默认是选择状态)。

3.IIS安装,推荐安装版本6.0。

开始 ->控制面板 ->添加或删除程序 ->添加或删除Windows组件 ->选择Internet信息服务(IIS) ->下一步,直到安装成功。

4.IIS设置。

开始 ->控制面板 ->性能和维护 ->管理工具 ->Internet 信息服务
1.创建虚拟目录
 默认网站 ->右击 ->新建 虚拟目录
2.设置根目录
 默认网站 ->属性 ->主目录(指定本地路径)
 默认网站 ->属性 ->网站(指定IP地址,提供本地局域网测试使用,默认为localhost,端口80)
3.浏览
 选择需要浏览的页面 ->右击 ->浏览打开。

二 场景分析

查询显示数据库中大类型和小类型信息,已菜单的格式显示出来。ASP+Access数据库。

三 代码开发

inc.asp

<%
    '请在这里输入您的ASP代码
    response.Write("这一行是inc包含文件输出的内容!<br/>")
%>

conf.asp

<%
    '请在这里输入您的ASP代码
    '定义函数
    function TD_productsclass()
        TD_productsclass="这个是function函数定义返回值!<br/>"
    end function

    '定义过程
    sub ShowArticleContent()
        dim PaginationType
        PaginationType=2
        select case PaginationType
        case 0 
            call DefaultPagination() '无内容分页格式
        case 1 
            call AutoPagination()    '自动内容分页
        case 2 
            call ManualPagination()  '按定义分页
        end select
    end sub
    
    sub DefaultPagination()
        response.Write("sub无内容分页格式<br/>")
    end sub
    
    sub AutoPagination()
        response.Write("sub自动内容分页<br/>")
    end sub
    
    sub ManualPagination()
        response.Write("sub按定义分页<br/>")
    end sub
%>

conn.asp

<%
'conn
'准备工作
dim conn 
dim connstr
dim path 
path = server.mappath("\OneFCMS_Data\OneFCMS.mdb")
response.Write(path & "<br/>")
'on error resume next
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&path
set conn=server.createobject("ADODB.CONNECTION")
conn.open connstr
If Err Then
  err.Clear
  Set Conn = Nothing
  Response.Write "数据库连接出错,请检查数据库连接文件中的数据库参数设置。"
  Response.End
End If 
%>

index.asp

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>  
<%Response.CodePage=65001%>  
<%Response.Charset="utf-8"%>
<!--#include file="inc.asp"--> 
<!--#include file="conf.asp"--> 
<!--#include file="conn.asp"-->
<HTML>
<HEAD>
    <Title>index.asp</Title>
    <META http-equiv="Content-Type" content="text/html; charset=utf-8">
    <META name="Generator" content="Asp Studio 1.0">
</HEAD>

<BODY>

<!-- 请在这里输入您的HTML代码 -->
<%=TD_productsclass%>
<%call ShowArticleContent()%>
<%
    '请在这里输入您的ASP代码
    dim BigClassID  '不能直接赋予值
    BigClassID = 5
    if  not isnumeric(BigClassID) then
        Response.Write "<script>alert('警告!请勿尝试注入!');history.go(-1);</script>" 
        Response.End()
    end if
 
    '第一步:创建对象
    set rs1=server.CreateObject("adodb.recordset")
    '第二步:打开连接,执行数据库查询语句
    rs1.open "select * from [bigClass] order by px_id asc",conn,1,1
    if rs1.eof and rs1.bof then
        response.Write("&nbsp;暂无记录 !")
    end if
    '第三步:判断记录集是否到达结尾
    if not rs1.eof then
    '第四步:数据的读取和操作
        for i=1 to rs1.recordcount
            '查询该大类下面的小类
            set rs2=server.createobject("adodb.recordset") 
            exec="select * from [smallclass] where BigClassID="&rs1("BigClassID")&" order by px_id asc  " 
            rs2.open exec,conn,1,1 
            response.Write("<br/><a href='xxx?bigId=" & rs1("BigClassID") & "' title=" & rs1("BigClassName") &">" &rs1("BigClassName") & "</a>")
            '循环输出该小类的信息
            '#################################
            do while not rs2.eof
                response.Write("<br/>---<a href='xxx?smallId=" & rs2("SmallClassID") & "' title=" & rs2("SmallClassName") & ">" & rs2("SmallClassName")& "</a>")
                rs2.movenext
            loop
            rs2.close
            set rs2=nothing
            '#################################
        'response.Write("<br/>")    
        rs1.movenext                     '大类移动到下一条。
        next
    end if
    '第五步:数据库对象的关闭和资源回收
    rs1.close
    set rs1=nothing
%>
    
</BODY>

</HTML>

 四 数据库表

bigClass表

####################

1.BigClassID

2.BigClassName

3.px_id

####################

smallClass表

####################

1.SmallClassID

2.SmallClassName

3.BigClassID

4.px_id

####################

原文地址:https://www.cnblogs.com/simpledev/p/3006664.html