新微赢技术网

标题: 很好用的ASP教程! [打印本页]

作者: 最ヅ后愛上你    时间: 2009-9-15 00:52
标题: 很好用的ASP教程!
无聊中。也发个教程给大家分享下!
有些网页你可能不想让无关的人看到,比如管理页面。通过一个表单、一个会话
(session)变理、一个查询语句及其三行代码即可实现对网页的密码保护。如此而已。

首先,创建一个数据库的表,命名为tblLogin;而后创建两个域(字段名称),一个叫"UserName",另一个叫"Password"。分别对两个字段设定初始值,使你可以用这个初始值进入被保护的页面。

接下来,你需要加Session("allow") = False在global.asa文件的
Session_OnStart中。当你输入了正确的用户名及密码后,这个值将变成True,使你得以进入被保护页面。这个会话在每次访问被保护页面时均会调用。

下面,创建一个表单:

<%@ Language=VBScript %>
<HTML>
<BODY>

<form name="Login" method="Post" action="login.asp">
<input type="text" name="username" size="20"> UserName

<input type="password" name="password" size="20"> Password

<input type="submit" name="btnLogin" value="Login">
</form>

</BODY>
</HTML>


将含上述代码的文件命名为main.asp或者其它的名字。

在下一章中,我们将创建查询语句用以检测输入的用户名和密码与数据库中的是否一致。


现在我们创建查询语句,可以验证在表单中输入的内容是否与数据库中的内容相一致。

<%@ Language=VBScript %>
<% Response.Buffer = True %>

<HTML>
<BODY>

<% Session("allow") = True %>

<%
UserName = Request.Form("username")
Password = Request.Form("password")
'grab the form contents

Set MyConn=Server.CreateObject("ADODB.Connection")
MyConn.Open "your connection string here"

SQL = "Select * From tblLogin"
Set RS = MyConn.Execute(SQL)

If UserName = RS("UserName") AND Password = RS("Password") Then
'if there is a match then show the page
%>


Put the contents of your page here.

<%
Else
Response.Redirect "http://www.yourdomain.com/login.asp"
RS.Close
MyConn.Close
Set RS = Nothing
Set MyConn = Nothing
End If
%>
'if there was no match then make the visitor try again to login.

</BODY>
</HTML>


把含上述代码的文件命名为login.asp

最后,把下面的三行代码加入需要保护的页面的最前面中。不要把它加到第二页的代码中。

<%@ Language=VBScript %>
<% Response.Buffer = True %>
<% If session("allow") = False Then Response.Redirect "main.asp" %>


如果你的页面名字不是main.asp,请将上面代码中相应的部分改成你创建的页面的名字。
如果会话(Session)变量的值为False(假),访问者在下一步看到的将会是登录页面(或其它页面)
1、数据库连接。
ASP与Access数据库连接:

<%@ language=VBs cript%>
<%
dim conn,mdbfile
mdbfile=server.mappath("数据库名称.mdb")
set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};uid=admin;pwd=数据库密码;dbq="&mdbfile

%>

ASP与SQL数据库连接:

<%@ language=VBs cript%>
<%
dim conn
set conn=server.createobject("ADODB.connection")
con.open "PROVIDER=SQLOLEDB;DATA SOURCE=SQL服务器名称或IP地址;UID=sa;PWD=数据库密码;DATABASE=数据库名称
%>

DW中用字符串连接代码:

"Driver={Microsoft Access Driver (*.mdb)};DBQ=数据库的绝对路径"

等做完后再打开数据库服务器,把

"Driver={Microsoft Access Driver (*.mdb)};DBQ=数据库的绝对路径"

换成

"Provider=Microsoft.Jet.OLEDB.4.0;data source="& server.mappath("服务器根目录下所在数据库路径")

并把本地服务器修改成测试服务器


2、加载别的页面。

<!--#include file = "页面的路径和名称"-->

3、显示数据库中的数据。

<%=rs("字段")%>

4、输出。

Response.Write("文字或者字符串");



5、打开数据库并建立数据集对象。

set conn=server.CreateObject("ADODB.connection")
conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&server.MapPath("***/photodata.mdb") '更改您的数据库文件存放路径
set rs=server.createobject("ADODB.recordset") '建立数据集
sql="SELECT * FROM data" '更改您的数据库表名
rs.Open sql,conn,1,1

6、获得系统的时间。

<%=now()%>

7、取得来访问的IP。

<%=request.serverVariables("remote_host")%>

8、随机数。

<%randomize%>
<%=(int(rnd()*n)+1)%>
N为可改变数

9、跳转页面。

Response.Redirect("页面")

10、弹出消息框。

Response.Write("<script>alert('消息框!')</script>")

11、用hidden类型来传递变量。

< % form method="post" action="mynextpage.asp" >
< % for each item in request.form % >
< input namee="< %=item% >" type="HIDDEN"
value="< %=server.HTMLEncode(Request.form(item)) % >" >
< % next % >
< /form >

12、常用SQL语句整理。

(1) 数据记录筛选:

sql="select * from 数据表 where 字段名=字段值 order by 字段名 [desc]"

sql="select * from 数据表 where 字段名 like ''%字段值%'' order by 字段名 [desc]"

sql="select top 10 * from 数据表 where 字段名 order by 字段名 [desc]"

sql="select * from 数据表 where 字段名 in (''值1'',''值2'',''值3'')"

sql="select * from 数据表 where 字段名 between 值1 and 值2"

(2) 更新数据记录:

sql="update 数据表 set 字段名=字段值 where 条件表达式"

sql="update 数据表 set 字段1=值1,字段2=值2 …… 字段n=值n where 条件表达式"

(3) 删除数据记录:

sql="delete from 数据表 where 条件表达式"

sql="delete from 数据表" (将数据表所有记录删除)

(4) 添加数据记录:

sql="insert into 数据表 (字段1,字段2,字段3 …) valuess (值1,值2,值3 …)"

sql="insert into 目标数据表 select * from 源数据表" (把源数据表的记录添加到目标数据表)

(5) 数据记录统计函数:

AVG(字段名) 得出一个表格栏平均值
COUNT(*|字段名) 对数据行数的统计或对某一栏有值的数据行数统计
MAX(字段名) 取得一个表格栏最大的值
MIN(字段名) 取得一个表格栏最小的值
SUM(字段名) 把数据栏的值相加

以上函数的方法:

sql="select sum(字段名) as 别名 from 数据表 where 条件表达式"
set rs=conn.excute(sql)

用 rs("别名") 获取统的计值,其它函数运用同上。

(5) 数据表的建立和删除:

CREATE TABLE 数据表名称(字段1 类型1(长度),字段2 类型2(长度) …… )

例:CREATE TABLE tab01(name varchar(50),datetime default now())

DROP TABLE 数据表名称 (永久性删除一个数据表)

附件:  asp教程.rar (135 K) 下载次数:15
作者: tony仔    时间: 2009-11-11 06:05
感觉好像在哪里看过了,汗~
作者: 朗月星空    时间: 2010-2-28 20:05
本来我决定不在社区回任何帖子了,但是看了你的帖子,我告诉自己这个帖子是一定要回的




欢迎光临 新微赢技术网 (http://bbs.weiying.cn/) Powered by Discuz! X3.2