asp语法教程_如何编程

asp语法教程_如何编程ASP编程基本语句(一)Access+asp编制网站是属于动态网站,是通过把要编制的内容写入数据库里,在通过读取数据库的内容显示出来,学习目的:学会数据库的基本操作。数据库的基本操作无非是:查询记

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

ASP编程基本语句(一)

 

  

 

Access + asp编制网站是属于动态网站,是通过把要编制的内容写入数据库里,在通过读取数据库的内容显示出来,学习目的:学会数据库的基本操作。数据库的基本操作无非是:查询记录,写入记录,删除记录,修改记录。如下图

ASP编程基本语句

 

数据库名称:data.mdb

数据表名称:lmnr 

字段: id  (主键)    bt  (文本)  name  (文本)  content (备注)

ASP编程基本语句

 

一,掌握ACCESS数据库的连接

<%

set conn=server.createobject(“adodb.connection”) ‘adodb数据库连接组件

conn.open “driver={microsoft access driver (*.mdb)};dbq=”&server.mappath(“data.mdb”)

%>

大家只要修改后面的data.mdb数据库名字和路径就可以了,例如数据库放在一个data文件夹里,那么就把 data.mdb 改成 data/data.mdb 如果你页面是放在文件夹里,那么就把data.mdb 改成 ../ data/data.mdb

可以把上述代码放在 conn.asp 里 使用时用服务器端包括连接就可以了

二,记录集查询

1,  用于 筛选无,排序 id  降序,限制重复10条信息记录集查询

<%

Set rs= Server.CreateObject (“ADODB.Recordset”)

sql = “Select top 10 * from  lmnr  ORDER BY  id  DESC “

rs.Open sql,conn,1,1

%>

其中: rs 是记录集名称,在一个页面有多个记录集查询,记录集名称不要一样

       top 10 是限制重复显示10条信息,取消 top 10  就是不限制

lmnr 是数据表名称

       DESC 是排列降序,升序 把 DESC 改为 ASC

2,  用于 筛选id,排序 无的记录集查询

<%

exec=”select * from lmnr where id=”&request.querystring(“id”)

set rs =server.createobject(“adodb.recordset”)

rs.open exec,conn

%>

其中: rs 是记录集名称,在一个页面有多个记录集查询,记录集名称不要一样

lmnr 是数据表名称

3,  用于显示用户级别,用户名称的记录集查询(筛选 name  阶段变量Username)

<%

Dim ColParam

ColParam = “未登录”

If (Session(“Username”) <> “”) Then

ColParam = Session(“Username”)

End If

set rs =server.CreateObject(“adodb.recordset”)

sql=”select * from lmnr WHERE name = ‘” + Replace(ColParam, “‘”, “””) + “‘”

rs.open sql,conn,1,1

%>

其中: rs 是记录集名称,在一个页面有多个记录集查询,记录集名称不要一样

lmnr 是数据表名称

4,  用于 筛选id_id,排序 id  降序,的记录集查询

<%

Dim ColParam

ColParam = “1”

If (Request.QueryString(“id_id”) <> “”) Then

ColParam = Request.QueryString(“id_id”)

End If

Set rs = Server.CreateObject(“ADODB.Recordset”)

sql= “SELECT * FROM lmnr WHERE id_id = ” + Replace(ColParam, “‘”, “””) + ” ORDER BY id DESC”

rs.open sql,conn,1,3

%>

其中: rs 是记录集名称,在一个页面有多个记录集查询,记录集名称不要一样

lmnr 是数据表名称

三,写入记录 。

写入记录由2个文件组成,,htj.ap  和  htjzx.asp。

htj.ap 是通过表单,把你要写入数据库里内容,传递给htjzx.asp 做法如下:

<form name=”form1″ method=”post” action=”htjzx.asp”>

    name:<input name=”name” type=”text” id=”name”>

    bt:<input name=”bt” type=”text” id=”bt”>

    content:<textarea name=”content” id=”content”></textarea>

    <input type=”submit” name=”Submit” value=”提交”>

    <input name=”insert” type=”hidden” id=”insert” value=”form1″>

</form>

htjzx.asp 是接受htj.ap 表单传递过来的内容,添加到数据库里。做法如下:

<!–#include file=”conn.asp” –>

<%

If (CStr(Request(“insert”)) = “form1”) Then

name=request.form(“name”)

bt=request.form(“bt”)

content=request.form(“content”)

exec=”insert into lmnr(name,bt,content)values(‘”+name+”‘,'”+bt+”‘,'”+content+”‘)”

conn.execute exec

conn.close

set conn=nothing

End If

response.write(“<script>alert(‘添加成功!’);location.href=’qfz.asp'</script>”)

%>

四,读取记录(读取10条记录,用于首页分装目录)

连接数据库

<!–#include file=”conn.asp” –>

建立查询记录

<%

Set rs= Server.CreateObject (“ADODB.Recordset”)

sql = “Select top 10 * from  lmnr  ORDER BY  id  DESC “

rs.Open sql,conn,1,1

%>

插入1行3列表格

在每列里依次写入调取数据表字段  name:<%= rs(“name”) %>  bt:<%= rs(“bt”) %>  content:<%= rs(“content”) %>

在行标签 <tr> 前 写入重复开始语句

<% ‘重复开始

if rs.EOF and rs.BOF then

response.write (“暂时还没有文章”)

else

Do Until rs.EOF %>

在行标签 </tr> 后写入重复结束语句

<% ‘重复结束

rs.MoveNext

Loop

end if

%>

在代码最下面写入关闭连接语句

<% conn.close            ‘关闭连接,

set conn=nothing      ‘释放内存  这两句很重要,不然会占用大量服务器资源

%>

完成后如下面

<%@LANGUAGE=”VBSCRIPT” CODEPAGE=”936″%>

<!–#include file=”conn.asp” –>

<%

Set rs= Server.CreateObject (“ADODB.Recordset”)

sql = “Select top 10 * from  lmnr  ORDER BY  id  DESC “

rs.Open sql,conn,1,1

%>

<html>

<head>

<meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″>

<title>无标题文档</title>

</head>

 

<body>

<table width=”100%” border=”1″>

  <% ‘重复开始

if rs.EOF and rs.BOF then

response.write (“暂时还没有文章”)

else

Do Until rs.EOF %>

<tr>

    <td>name:<%= rs(“name”) %></td>

    <td>bt:<%= rs(“bt”) %></td>

    <td>content:<%= rs(“content”) %></td>

  </tr><% ‘重复结束

rs.MoveNext

Loop

end if

%>

 

</table>

</body>

</html>

<% conn.close            ‘关闭连接,

set conn=nothing      ‘释放内存  这两句很重要,不然会占用大量服务器资源

%>

ASP编程基本语句(二)

 

 

 

一,后台管理

后台管理实质是一个读取全部记录的目录页,主要是为了有针对性的修改删除记录,一个内容表里可能有很多条记录,要显示在一个页面中,这个页面就很长,不利于浏览,因此要限制一个页面显示几条,利用翻页来实现查看全部。

建立一个 hbj.asp 文件 

连接数据库

<!–#include file=”conn.asp” –>

建立查询记录

<%

set rs = server.CreateObject(“adodb.recordset”)

sql=”select * from lmnr order by id desc”

rs.CursorLocation = 3

rs.Open sql,conn,0,2,1  ‘ //(Yoko:’这里执行你查询SQL并获得结果记录集

%>

写入翻页脚本语句

<%

rs.PageSize = 1  ‘//(Yoko:这里设定每页显示的记录数

        pre = true

      last = true

      page = trim(Request.QueryString(“page”))

     

      if len(page) = 0 then

                  intpage = 1

                  pre = false

      else

          if cint(page) =< 1 then

               intpage = 1

               pre = false

          else

              if cint(page) >= rs.PageCount then

                  intpage = rs.PageCount

                  last = false

              else

                   intpage = cint(page)

             end if

         end if

      end if

    if not rs.eof then

         rs.AbsolutePage = intpage

    end if

%>

插入1行6列宽100%的表格,在1 2 3列里写入调取数据表字段  name:<%= rs(“name”) %>  bt:<%= rs(“bt”) %>  content:<%= rs(“content”) %>,在4列里写入连接添加语句<a href=”htj.asp”>添加</a>,在5列写入连接修改语句

<a href=”hxg.asp?id=<%= rs(“id”) %>”>修改</a>,在6列写入连接删除语句<a href=”hsc.asp?id=<%= rs(“id”) %>”>删除</a>

在行标签 <tr> 前 写入重复开始语句

<!–循环开始–>

 <%   

   for i=1 to rs.PageSize

     if rs.EOF or rs.BOF then exit for

  %>

在行标签 </tr> 后写入重复结束语句

  <!–循环体结束–>

  <% 

     rs.movenext

    next

   %>

在</table> 下面写入翻页语句

<!–分页部分:–>

 <table width=”99%” border=”1″ >

   <tr>

     <%if rs.pagecount > 0 then%>

     <td width=”13%” align=”left”>当前是<%=intpage%>页 / 共有<%=rs.PageCount%>页</td>

     <%else%>

    <td width=”41%” align=”left”>当前页0/0</td><%end if%>

    <td width=”46%” align=”right”> <a href=”hbj.asp?page=1″>首页</a>|

     <%if pre=true then%>

     <a href=”hbj.asp?page=<%=intpage -1%>”>上页</a>| <%end if%>

     <%if last then%>

      <a href=”hbj.asp?page=<%=intpage +1%>”>下页</a> |<%end if%>

      <a href=”hbj.asp?page=<%=rs.PageCount%>”>尾页</a>|转到第

      <select name=”sel_page” onchange=”javascript:location=this.options[this.selectedIndex].value;”>

      <%

       for i = 1 to rs.PageCount

       if i = intpage then%>

       <option value=”hbj.asp?page=<%=i%>” selected><%=i%></option>

     <%else%>

       <option value=”hbj.asp?page=<%=i%>”><%=i%></option>

        <%

          end if

        next

        %>

     </select>页</font>

    </td>

   </tr>

 </table>

在代码最下面写入关闭连接语句

<% conn.close            ‘关闭连接,

set conn=nothing      ‘释放内存  这两句很重要,不然会占用大量服务器资源

%>

二.写入记录 。

写入记录由2个文件组成,,htj.asp  和  htjzx.asp。

1,htj.ap 是通过表单,把你要写入数据库里内容,传递给htjzx.asp 做法如下:

插入表单后连续插入连续插入2个文本字段,1个文本区域和1个按钮。 分别在文本域里输入 name,bt ,content,在按钮后插入隐藏域,隐藏区域 输入insert  值里输入form1 在form 的动作里输入htjzx.asp  完成后代码如下

<form name=”form1″ method=”post” action=”htjzx.asp”>

    name:<input name=”name” type=”text” id=”name”>

    bt:<input name=”bt” type=”text” id=”bt”>

    content:<textarea name=”content” id=”content”></textarea>

    <input type=”submit” name=”Submit” value=”提交”>

    <input name=”insert” type=”hidden” id=”insert” value=”form1″>

</form>

2,htjzx.asp 是接受htj.ap 表单传递过来的内容,添加到数据库里。做法如下:

<!–#include file=”conn.asp” –>

<%

If (CStr(Request(“insert”)) = “form1”) Then

name=request.form(“name”)

bt=request.form(“bt”)

content=request.form(“content”)

exec=”insert into lmnr(name,bt,content)values(‘”+name+”‘,'”+bt+”‘,'”+content+”‘)”

conn.execute exec

conn.close

set conn=nothing

End If

response.write(“<script>alert(‘添加成功!’);location.href=’hbj.asp'</script>”)

%>

三,修改记录

修改记录由2个文件组成,,hxg.asp  和  hxgzx.asp。

1,hxg.asp是通过表单,把你要修改数据库里内容,传递给hxgzx.asp 做法如下:

连接数据库

<!–#include file=”conn.asp” –>

建立查询记录

<%

exec=”select * from lmnr where id=”&request.querystring(“id”)

set rs =server.createobject(“adodb.recordset”)

rs.open exec,conn

%>

插入表单后连续插入连续插入2个文本字段,1个文本区域和1个按钮。 分别在第1个文本字段的文本域里输入 name,初始值里输入<%= rs(“name”) %> ,在第2个文本字段的文本域里输入bt ,初始值里输入<%= rs(“bt”) %>,在第3个文本区域的文本域里输入content,初始值里输入<%= rs(“content”) %>,在按钮后插入隐藏域,隐藏区域输入id  值里输入<%=request.querystring(“id”)%> 在form 的动作里输入hxgzx.asp  完成后代码如下

<!–#include file=”conn.asp” –>

<%

exec=”select * from lmnr where id=”&request.querystring(“id”)

set rs =server.createobject(“adodb.recordset”)

rs.open exec,conn

%>

<form name=”form1″ method=”post” action=”hxgzx.asp”>

  <input name=”name” type=”text” id=”name” value=”<%= rs(“name”) %>”>

  <input name=”bt” type=”text” id=”bt” value=”<%= rs(“bt”) %>”>

    <textarea name=”content” id=”content”><%= rs(“name”) %></textarea>

<input type=”submit” name=”Submit” value=”提交”>

  <input type=”hidden” name=”id” value=”<%=request.querystring(“id”)%>” />

</form>

2,hxgzx.asp 是接受hxg.ap 表单传递过来的内容,修改数据库里的数据。做法如下:

连接数据库

<!–#include file=”conn.asp” –>

写入修改语句

<%

exec=”select * from lmnr where id=”&request.form(“id”)

set rs =server.createobject(“adodb.recordset”)

rs.open exec,conn,1,3

rs(“name”)=request.form(“name”)

rs(“bt”)=request.form(“bt”)

rs(“content”)=request.form(“content”)

rs.update

rs.close

set rs=nothing

conn.close

set conn=nothing

response.write(“<script>alert(‘修改成功!’);location.href=’hbj.asp'</script>”)

%>

四,删除记录

删除记录由2个文件组成,,hsc.asp  和  hsczx.asp。

1,hsc.asp是通过表单,把你要删除数据库里id,传递给hsczx.asp 做法如下:

连接数据库

<!–#include file=”conn.asp” –>

建立查询记录

<%

exec=”select * from lmnr where id=”&request.querystring(“id”)

set rs =server.createobject(“adodb.recordset”)

rs.open exec,conn

%>

插入表单,在表单里输入“您确定要删除<%=rs(“bt”) %>吗?”后插入按钮,在按钮后插入隐藏域,隐藏区域 输入id  值里输入<%=request.querystring(“id”)%> 在form 的动作里输入hsczx.asp 代码最下面输入释放语句

<%

rs.Close()

Set rs = Nothing

%>

 完成后代码如下

<%@LANGUAGE=”VBSCRIPT” CODEPAGE=”936″%>

<!–#include file=”conn.asp” –>

<%

exec=”select * from lmnr where id=”&request.querystring(“id”)

set rs=server.createobject(“adodb.recordset”)

rs.open exec,conn

%>

<html>

<head>

<meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″>

<title>无标题文档</title>

</head>

<body>

<form name=”form1″ method=”post” action=”hsczx.asp”>

您确定要删除<%=rs(“bt”) %>吗?

        <input type=”submit” name=”Submit” value=”提交”>

        <input name=”id” type=”hidden” id=”id” value=”<%=request.querystring(“id”)%>”>

    </form>

</body>

</html>

<%

rs.Close()

Set rs = Nothing

%>

2,hsczx.asp 是接受hsc.asp 表单传递过来的id,删除数据库里的id项。做法如下:

连接数据库

<!–#include file=”conn.asp” –>

写入删除语句

<%

exec=”delete * from lmnr where id=”&request.form(“id”)

set rs=server.createobject(“adodb.recordset”)

rs.open exec,conn,1,3

response.write(“<script>alert(‘删除成功!’);location.href=’hbj.asp'</script>”)

conn.close            ‘关闭连接,

set conn=nothing      ‘释放内存 这两句很重要,不然会占用大量服务器资源。

%>

ASP编程基本语句(三)

 

 

 

一.目录页面

目录页面是查看一个数据表里的全部信息,和后台管理一面一样做法,不过不用连接添加,修改,删除了,改为在标题上连接查看显示内容就可以了。

建立一个 qml.asp 文件 

连接数据库

<!–#include file=”conn.asp” –>

建立查询记录

<%

set rs = server.CreateObject(“adodb.recordset”)

sql=”select * from lmnr order by id desc”

rs.CursorLocation = 3

rs.Open sql,conn,0,2,1  ‘ //(Yoko:’这里执行你查询SQL并获得结果记录集

%>

写入翻页脚本语句

<%

rs.PageSize = 1  ‘//(Yoko:这里设定每页显示的记录数

        pre = true

      last = true

      page = trim(Request.QueryString(“page”))

     

      if len(page) = 0 then

                  intpage = 1

                  pre = false

      else

          if cint(page) =< 1 then

               intpage = 1

               pre = false

          else

              if cint(page) >= rs.PageCount then

                  intpage = rs.PageCount

                  last = false

              else

                   intpage = cint(page)

             end if

         end if

      end if

    if not rs.eof then

         rs.AbsolutePage = intpage

    end if

%>

插入1行3列宽100%的表格,在1列里写入调取数据表字段语句  name:<%= rs(“name”) %>

在2列里写入调取数据表字段和连接查看内容页面的

<a href=”qck.asp?id=<%= rs(“id”) %>”>bt:<%= rs(“bt”) %></a> 

在3列里写入调取数据表字段content:<%= rs(“content”) %>,

在行标签 <tr> 前 写入重复开始语句

<!–循环开始–>

 <%   

   for i=1 to rs.PageSize

     if rs.EOF or rs.BOF then exit for

  %>

在行标签 </tr> 后写入重复结束语句

  <!–循环体结束–>

  <% 

     rs.movenext

    next

   %>

在</table> 下面写入翻页语句

<!–分页部分:–>

 <table width=”99%” border=”1″ >

   <tr>

     <%if rs.pagecount > 0 then%>

     <td width=”13%” align=”left”>当前是<%=intpage%>页 / 共有<%=rs.PageCount%>页</td>

     <%else%>

    <td width=”41%” align=”left”>当前页0/0</td><%end if%>

    <td width=”46%” align=”right”> <a href=”qml.asp?page=1″>首页</a>|

     <%if pre=true then%>

     <a href=”qml.asp?page=<%=intpage -1%>”>上页</a>| <%end if%>

     <%if last then%>

      <a href=”qml.asp?page=<%=intpage +1%>”>下页</a> |<%end if%>

      <a href=”qml.asp?page=<%=rs.PageCount%>”>尾页</a>|转到第

      <select name=”sel_page” onchange=”javascript:location=this.options[this.selectedIndex].value;”>

      <%

       for i = 1 to rs.PageCount

       if i = intpage then%>

       <option value=”qml.asp?page=<%=i%>” selected><%=i%></option>

     <%else%>

       <option value=”qml.asp?page=<%=i%>”><%=i%></option>

        <%

          end if

        next

        %>

     </select>页</font>

    </td>

   </tr>

 </table>在代码最下面写入关闭连接语句

<% conn.close            ‘关闭连接,

set conn=nothing      ‘释放内存  这两句很重要,不然会占用大量服务器资源

%>

二,分装页面(读取10条记录,用于首页分装目录)

分装页面也是目录页,用于首页中,因为只要读取几条最新的,不做翻页,就简单了

建立 qfz.asp 文件

连接数据库

<!–#include file=”conn.asp” –>

建立查询记录

<%

Set rs= Server.CreateObject (“ADODB.Recordset”)

sql = “Select top 10 * from  lmnr  ORDER BY  id  DESC “

rs.Open sql,conn,1,1

%>

插入1行3列表格

在每列里依次写入调取数据表字段 

name:<%= rs(“name”) %> 

<a href=”qck.asp?id=<%= rs(“id”) %>”>bt:<%= rs(“bt”) %></a> 

content:<%= rs(“content”) %>

在行标签 <tr> 前 写入重复开始语句

<% ‘重复开始

if rs.EOF and rs.BOF then

response.write (“暂时还没有文章”)

else

Do Until rs.EOF %>

在行标签 </tr> 后写入重复结束语句

<% ‘重复结束

rs.MoveNext

Loop

end if

%>

在代码最下面写入关闭连接语句

<% conn.close            ‘关闭连接,

set conn=nothing      ‘释放内存  这两句很重要,不然会占用大量服务器资源

%>

完成后如下面

<%@LANGUAGE=”VBSCRIPT” CODEPAGE=”936″%>

<!–#include file=”conn.asp” –>

<%

Set rs= Server.CreateObject (“ADODB.Recordset”)

sql = “Select top 10 * from  lmnr  ORDER BY  id  DESC “

rs.Open sql,conn,1,1

%>

<html>

<head>

<meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″>

<title>无标题文档</title>

</head>

 

<body>

<table width=”100%” border=”1″>

  <% ‘重复开始

if rs.EOF and rs.BOF then

response.write (“暂时还没有文章”)

else

Do Until rs.EOF %>

<tr>

    <td>name:<%= rs(“name”) %></td>

    <td>bt:<%= rs(“bt”) %></td>

    <td>content:<%= rs(“content”) %></td>

  </tr><% ‘重复结束

rs.MoveNext

Loop

end if

%>

 

</table>

</body>

</html>

<% conn.close            ‘关闭连接,

set conn=nothing      ‘释放内存  这两句很重要,不然会占用大量服务器资源

%>

三,读取内容页面

目录页面或分装页面都是显示很简单,要显示一个内容很多文字,或多媒体图片等,在目录页显示就会破坏页面完整性,要具体查看某一条详细信息,就用显示内容页,接受目录页传递来的 id 来显示这个id 项的全部内容

建立 qck.asp 文件

连接数据库

<!–#include file=”conn.asp” –>

建立查询记录

<%

exec=”select * from lmnr where id=”&request.querystring(“id”)

set rs =server.createobject(“adodb.recordset”)

rs.open exec,conn

%>

插入表格后 把数据表中读取字段语句 写入单元格里就可以了

插入3行一列表格

第1行 写入name:<%= rs(“name”) %>,

第2行写入bt:<%= rs(“bt”) %>

第3行写入content:<%= rs(“content”) %>

在代码最下面写入关闭连接语句

<% conn.close            ‘关闭连接,

set conn=nothing      ‘释放内存  这两句很重要,不然会占用大量服务器资源

%>

ASP编程基本语句(四)

 

 

 

一,用户注册

用户注册由传递和执行2个页面组成

1,  在数据库里编制数据库用户表

ASP编程基本语句

 

2,  yhzc.asp 实质就是写入页面,和添加一样,就是多一个检查用户存在和密码语句

建立yhzc.asp 文件

插入表单后,插入4行1列宽 300的表格,

第1行输入 “用户名:”在后面插入文本字段 文本域输入 name

第2行输入“用户密码:”在后面插入文本字段 文本域输入 pwd,类型改为 密码

第3行输入“密码确认:”在后面插入文本字段 文本域输入 pwd2,类型改为 密码

第4行插入按钮  在form 的动作里输入yhzczx.asp  完成后代码如下

<%@LANGUAGE=”VBSCRIPT” CODEPAGE=”936″%>

<html>

<head>

<meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″>

<title>无标题文档</title>

</head>

 

<body>

<form name=”form1″ method=”post” action=”yhzczx.asp”>

  <table width=”300″ border=”1″>

    <tr>

      <td>用户名:

      <input name=”name” type=”text” id=”name”></td>

    </tr>

    <tr>

      <td>用户密码:

        <input name=”pwd” type=”password” id=”pwd”></td>

    </tr>

    <tr>

      <td>密码确认:

      <input name=”pwd2″ type=”password” id=”pwd2″></td>

    </tr>

    <tr>

      <td><input type=”submit” name=”Submit” value=”提交”></td>

    </tr>

  </table>

</form>

</body>

</html>

3,  注册执行页面

建立yhzczx.asp文件、

连接数据库

写入执行代码

<%

name=request(“name”)

pwd=request(“pwd”)

pwd2= request (“pwd2”)

xx=request(“xx”)

sex=request(“sex”)

if pwd<>pwd2 then

response.write(“<script>alert(‘两次输入的密码不对’);window.history.back();</script>”)

response.end()  ‘结束运行

end if

set rs=server.CreateObject(“adodb.recordset”)

sql=”select count(0) from yhgl where name='”&name&”‘”

rs.open sql,conn,1,1

if rs(0)>0 then   ‘判断用户名是否已经注册

response.write(“<script>alert(‘用户名已经存在’);window.history.back();</script>”)

response.end()  ‘结束运行

else 

conn.execute(“insert into yhgl([name],[pwd]) values(‘”&name&”‘,'”&pwd&”‘)”) ‘添加到数据库注册完成,yhgl_pwd是 ACCESS中的保留关键字。

response.write(“<script>alert(‘注册成功!’);location.href=’yhdl.asp'</script>”)

end if

conn.close            ‘关闭连接,

set conn=nothing      ‘释放内存 这两句很重要,不然会占用大量服务器资源。

%>

二,用户登录

用户登录由传递和执行2个页面组成

1,yhdl.asp

建立yhdl.asp 文件

插入表单后,插入3行1列宽 300的表格,

第1行输入 “用户名:”在后面插入文本字段 文本域输入 name

第2行输入“用户密码:”在后面插入文本字段 文本域输入 pwd,类型改为 密码

第3行插入按钮  在form 的动作里输入yhdlzx.asp  完成后代码如下

<form name=”form1″ method=”post” action=”yhdlzx.asp”>

  <table width=”300″ border=”1″>

    <tr>

      <td>用户名:

      <input name=”name” type=”text” id=”name”></td>

    </tr>

    <tr>

      <td>用户密码:

      <input name=”pwd” type=”password” id=”pwd”></td>

    </tr>

    <tr>

      <td><input type=”submit” name=”Submit” value=”提交”></td>

    </tr>

  </table>

</form>

2,登录执行页面

建立  yhdlzx.asp 文件

写入执行语句

<!–#include file=”conn.asp”–>

<%

Session(“name”)=request.form(“name”)’在 Session中保存用户名

dim username,password

name=request.form(“name”)’从表单传递的用户名

pwd=request.form(“pwd”)

‘查询记录

set rs=server.CreateObject(“adodb.recordset”)

sql=”select * from yhgl where name='”&name&”‘”

rs.open sql,conn,1,1

if rs.eof then

response.write “<script>alert(‘登录失败,用户名不对’);history.back();</script>”

response.end

else

Session(“Username”) = valUsername

if rs(“pwd”)<>pwd then

response.write “<script>alert(‘登录失败,密码不对’);history.back();</script>”

response.end

end if

‘ *** Validate request to log in to this site.

LoginAction = Request.ServerVariables(“URL”)

If Request.QueryString<>”” Then LoginAction = LoginAction + “?” +  Server.HTMLEncode(Request.QueryString)

valUsername=CStr(Request.Form(“name”))

If valUsername <> “” Then

fldUserAuthorization=”yhjb”

redirectLoginSuccess=”qml.asp”

redirectLoginFailed=”hydl.asp”

flag=”ADODB.Recordset”

set rsUser = Server.CreateObject(flag)

rsUser.Source = “SELECT name, pwd”

If fldUserAuthorization <> “” Then rsUser.Source = rsUser.Source & “,” &  fldUserAuthorization

rsUser.Source =rsUser.Source & ” FROM yhgl WHERE name='” &  Replace(valUsername,”‘”,”””) &”‘ AND pwd='” &  Replace(Request.Form(“pwd”),”‘”,”””) &  “‘”

‘ username and password match-this is a valid user

Session(“Username”) = valUsername

Session.Timeout =120

If (fldUserAuthorization <> “”) Then

Else

Session(“UserAuthorization”) = “”

End If

if CStr(Request.QueryString(“accessdenied”)) <> “” And false Then

redirectLoginSuccess = Request.QueryString(“accessdenied”)

End If

Response.Redirect(redirectLoginSuccess)

End If

rsUser.Close

Response.Redirect(redirectLoginFailed)

session(“admin”)=username

response.write”<script>alert(‘登录成功’);location.href=’qml.asp'</script>”

end if

conn.close            ‘关闭连接,

set conn=nothing ‘释放内存 这两句很重要,不然会占用大量服务器资源

%>

几个特殊语句的应用

 

   
 

 

一,只有会员登录才能显示的语句
放在要隐藏文字或图片前面的语句  <%  If  ad1(“name”).Value <> “未登录” Then %>  (这句话的意思是:如果as1这个记录集查询表里文本字段 name 不等于 未登录时 你隐藏的内容才显示
放在要隐藏文字或图片后面的语句  <% End If %>
注意ad1 是记录集查询的名称,一定要和记录集查询的名称一样
加入这个功能时,这个页面一定要有用户管理的记录集查询,把显示用户级别,用户名称的记录集查询(筛选 name  阶段变量Username)语句加入页面上。
<%
Dim ColParam
ColParam = “未登录”
If (Session(“Username”) <> “”) Then
ColParam = Session(“Username”)
End If
set ad1 =server.CreateObject(“adodb.recordset”)
sql=”select * from yhgl WHERE name = ‘” + Replace(ColParam, “‘”, “””) + “‘”
ad1.open sql,conn,1,1
%>
用户管理数据表的名是yhgl 记录集查询名是ad1
二,只有是管理员才能显示的语句
放在要隐藏文字或图片前面的语句  <%  If  ad1(“yhjb”).Value = “管理员” Then %>  (这句话的意思是:如果ad1这个记录集查询表里文本字段 yhjb 等于 管理员 时 你隐藏的内容才显示
放在要隐藏文字或图片后面的语句  <% End If %> 
同样也得有用户管理的记录集查询,语句和什么一样,这条语句一般用于后台管理显示上。
三,有二个条件显示隐藏文字或图片的语句
放在要隐藏文字或图片前面的语句 <%  If  rs (“xzxz”).Value = “0” or ad1(“name”).Value <> “未登录” Then  (这句话的意思是:如果rs 这个记录集查询表里文本字段 xzxz 等于0 或  ad1这个记录集查询表里文本字段 name 不等于 未登录 时 满足一个条件 你隐藏的内容才显示)
放在要隐藏文字或图片后面的语句  <% End If %> 
当然使用这个功能,这个页面一定要有名为ad1用户管理的记录集查询和一个名为rs带有 xzxz 字段的记录集查询语句加入页面上。
这个功能多数用在随时改变“限制只有登录”才能看见你隐藏的文字或图片或随时改变“不限制”任何人都能看见你隐藏的文字或图片
四,只有是管理员才能打开页面的语句
后台页面为了防止被人打开,要在代码里的<html>标签前写入下面语句
<%
‘ *** Restrict Access To Page: Grant or deny access to this page
MM_authorizedUsers=”管理员”
MM_authFailedURL=”../ts.asp”
MM_grantAccess=false
If Session(“MM_Username”) <> “” Then
  If (false Or CStr(Session(“MM_UserAuthorization”))=””) Or _
         (InStr(1,MM_authorizedUsers,Session(“MM_UserAuthorization”))>=1) Then
    MM_grantAccess = true
  End If
End If
If Not MM_grantAccess Then
  MM_qsChar = “?”
  If (InStr(1,MM_authFailedURL,”?”) >= 1) Then MM_qsChar = “&”
  MM_referrer = Request.ServerVariables(“URL”)
  if (Len(Request.QueryString()) > 0) Then MM_referrer = MM_referrer & “?” & Request.QueryString()
  MM_authFailedURL = MM_authFailedURL & MM_qsChar & “accessdenied=” & Server.URLEncode(MM_referrer)
  Response.Redirect(MM_authFailedURL)
End If
%>
其中 ts.asp  是一个提示页面  一般用于后台管理,添加,修改,删除页面中

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/166433.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • idea springboot启动报SLF4J:Failed to load class “org.slf4j.impl.StaticLoggerBinder”「建议收藏」

    idea springboot启动报SLF4J:Failed to load class “org.slf4j.impl.StaticLoggerBinder”「建议收藏」首先声明一下,我用的IntellijIDEA2018.3版本的,springboot的版本是2.0.5.RELEASE版本。当我喜滋滋的编写完测试代码,点击Debug的时候,睁大眼睛看控制台简直是看得一脸懵逼,控制台显示如下:SLF4J:Failedtoloadclass"org.slf4j.impl.StaticLoggerBinder".SLF4J:D…

  • 【SQL Server】关于报错“备份集中的数据库备份与现有的数据库”xxx”不同”的解决方案

    【SQL Server】关于报错“备份集中的数据库备份与现有的数据库”xxx”不同”的解决方案在做数据库备份与还原的过程中可能因为一下小的细节导致通过备份文件还原的时候报错:备份集中的数据库备份与现有的数据库"xxx"不同导致这种报错的原因是:备份文件与现有数据库的结构不一致因此要恢复数据库就需要去“选项”中勾选“覆盖现有数据库”这样备份就搞定了 …

  • AMM和ASMM切换

    AMM和ASMM切换现在的Oracle正在往智能化方向发展。如果我们现在找一些8i/9i时代的Oracle书籍,怎么样配置合适的数据库各内存池大小是非常重要的话题。但是进入10g之后,自动内存池调节成为一个重要Oracle特性。在10g时,Oracle推出了ASMM(AutomaticSharedMemoryManagement),实现了OracleSGA和PGA内部结构的自调节。进入…

  • mpu9250输出的数据是啥(r语言读取excel数据)

    MPU9250对初始数据的读取1.mpu9250介绍MPU9250是一款9轴运动跟踪装置,他在小小的3X3X1mm的封装中融合了3轴加速度、3轴陀螺仪、3轴磁力计以及数字运动处理器(DMP)并且兼容MPU6515。其完美的I2C方案,可直接输出9轴的全部数据。因此它也是四轴姿态解算的基础,所以正确获取MPU9250的原始数据显得尤为重要。注意:1.但…

  • Java面试题大全带答案「建议收藏」

    Java面试题大全带答案「建议收藏」本人发现网上虽然有不少Java相关的面试题,但第一未必全,第二未必有答案,第三虽然有答案,但未必能在面试中说,所以在本文里,会不断收集各种面试题,并站在面试官的立场上,给出我自己的答案。第一部分、Java基础1.JDK和JRE有什么区别?JDK是java的开发工具包,有JDK8,9甚至到14的差别,安装以后,不仅包含了java的开发环境,比如java.exe,还包含了运行环境(jre)相关包。 JRE是java运行环境,一般装好JDK后,系统里会有对应的JRE环境。2..

  • aliddns ipv6_linux系统下配置阿里DDNS(IPv6)

    aliddns ipv6_linux系统下配置阿里DDNS(IPv6)IPv6日渐完善,家里的宽带和手机也都分配了ipv6全球单播地址,手机分到了/64,宽带更是分到了/56。测试了一下运营商内外的连通性也都还可以,基本能跑满带宽,IPv6终于可以用起来了,个个都是公网,不用再渴求ipv4和搞内网穿透了。适用此教程适用于基于linux的各种系统,ubuntu、centos、openwrt、群晖等等,本文只介绍IPv6,不涉及IPv4。代码aliddnsipv6_a…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号