首页技术asp网站设计(asp动态网页设计)

asp网站设计(asp动态网页设计)

编程之家2023-11-01149次浏览

大家好,今天来为大家解答asp网站设计这个问题的一些问题点,包括asp动态网页设计也一样很多人还不知道,因此呢,今天就来为大家分析分析,现在让我们一起来看看吧!如果解决了您的问题,还望您关注下本站哦,谢谢~

asp网站设计(asp动态网页设计)

什么是ASP网站

ASP简介

Active Server Pages简介(1)

静态的站点内容

目前Internet上的许多站点,仍然提供“静态”(static)的主页内容。所谓“静态”,指的就是站点的主页内容是“固定不变”的。

当浏览器通过Internet的HTTP(Hypertext Transport Protocol)协议,向站点服务器(Web Server)要求提供主页的内容时,站点服务器收到要求后,就传送愿已设计好的静态的HTML的文件数据给浏览器。

一个“静态”的站点,若要更新主页的内容,必须手动的来更新其HTML的文件数据。

asp网站设计(asp动态网页设计)

动态的站点内容

当在浏览器上填好表格(form)的输入数据,以提供HTTP要求时,可以在站点服务器中执行的应用程序,而不只是一个HTML文件。站点服务器收到要求执行的应用程序,分析表格(form)的输入数据,将执行的结果以HTML的格式传送给浏览器。

ACTIVE SERVER PAGES

Active server pags(动态服务器主页,简称ASP),内含于Internet Information

Server(IIS)当中,提供一个服务器端(server-side)的scripting环境,让你产生和执行动态,交互式,高效率的站点服务器的应用程序。

你不必担心浏览器是否能执行你设计出来的Active Server Pages,你的站点服务器会自动将Active Server Pages的程序码,解释为标准HTML格式的主页内容,在送到用户端的浏览器上显示出来。用户端只要使用常规可执行HTML码的浏览器,即可浏览Active Server Pages所设计的主页内容。

asp网站设计(asp动态网页设计)

Active Server Pages的特点是:

一:无须Compile编译:容易产生,无须Compile编译或Link链接即可执行。

二:使用常规文本编辑器,如Windows的记事本,即可设计。

三:与浏览器无关(Browser Independence):用户端只要使用常规的可执行HTML玛的浏览器,即可浏览Active Server Pages所设计的主页内容,

Script语言(Vbscript,Jscript)是在站点服务器(Server端)执行,用户不需要执行这些Script语言。

四:面向对象(Object_Orient).

五:可通过ActiveX Server components(ActiveX服务器组件)来扩充功能。

ActiveX Server component,可使用Visual Basic,Java,Visual C++,COBOL等语言来实现。

六:Active Server Pages与任何AcTiveX scripting语言兼容。除了可使用VBscript或JScript语言来设计,并可通过Plug-in的方式,使用由third party所提供的其他譬如REXX,perl,Tcl等scripting语言。script引擎是处理script的COM(Component Object Model)对象。

七:Active server Pages的源程序代码,不会传到用户的浏览器,因此可以保护辛辛苦苦写出来的源程序不会外泻。传到用户浏览器的是Active Server Pages执行的结果的常规HTML码。

八:使用server端script产生client端script,你可以使用ASP程序码,在站点服务器执行script语言(VBscript或 Jscript),来产生或更改在client端执行的script语言。

Active Server Pages简介(2)

ASP对象

Active Server Pages提供五个内置的“对象”(object),你可以直接调用:

一:Request:取得用户信息。

二:Response:传送信息给用户。

三:Server:提供访问服务器的方法(methods)和属性(properties)的功能。

四:Applicatin:一个应用程序,可以在多个主页之间保留和使用一些共同的信息。

五:Session:一个用户,可以在多个主页之间保留和使用一些共同的信息。

在多个主页之间共享信息

ASP开发的应用程序,可以在多个主页之间保留和使用一些共同的信息,ASP提供两种适用范围,如下:

一:Application:Application的所有信息,在一个应用程序,多个主页之间,

可以让所有的用户共同使用。

二:Session:Session的所有信息,仅适用于一个用户。

Active Server Pages简介(3)

.asp文件

Active Server Pages(ASP)制作成.ASP扩展名的文件,一个.asp文件是一个

文本文件,包括:

1.HTML标记(tags)

2.VBscript或Jscript语言的程序码

3.ASP语法

ASP语法

ASP并不是一个script语言,而是提供一个可以集成script语言(VBscript或 Jscript)到HTML主页的环境。

HTML标记(tags)使用“<...>”将HTML程序码包含起来,以与常规的文本区分开来;而ASP使用“<%...%>”将ASP的script程序码包含起来。

范例:asp1.asp

显示现在的日期时间

譬如站点服务器asp1.asp文件:

现在是:<%=now%>

再用户端显示:

现在是:1998/5/17皮棉3:11:20

让我们再看一个例子。

范例:asp2.asp

重复循环

这个ASP例子,在用户端浏览器,浏览执行的结果如下,显示五个重复的句子,字体越来越大。

站点服务器asp2.asp文件的ASP源代码如下:

<%for i= 1 to 5%>

<font size=<%= i%>

color=#0000ff>快速掌握Internet技术

</font><br>

<%next%>

Active Server Pages的源代码,不会传到用户的浏览器,可以保护你写的源程序不会外漏。因此,在用户端观看到的是常规的HTML码,你的站点服务器会自动将Active Server pages的程序代码,解释为标准的HTML格式的主页内容,如下:

<font size=1 color=#0000ff>快速掌握Internet技术

</font><br>

<font size=2 color=#0000ff>快速掌握Internet技术

</font><br>

<font size=3 color=#0000ff>快速掌握Internet技术

</font><br>

<font size=4 color=#0000ff>快速掌握Internet技术

</font><br>

<font size=5 color=#0000ff>快速掌握Internet技术

</font><br>

传送字符串到用户端的浏览器

Response.write方法,是最常用的传送字符串到浏览器的方法。语法如下:

Response.write字符串

以下的例子向用户打招呼:

<%

Response.write"欢迎光临"

%>

也可以用如下方法:

<%...%>

欢迎光临

<%...%>

链接到指定的URL地址

使用Response.redirect方法,可以连接到指定的URL地址。语法如下:

Response.redirect URL

譬如,自动连接到首页:

<%

Response.Redirect"homepage.asp"

%>

须注意一点,若此.asp主页的内容已传送给用户,在使用Response.redirect

,将发生错误!

Active Server Pages简介(4)

ASP Script语法

使用VBscript或Jscript的ASP语法

ASP与任何ActiveX SCripting语言兼容。除了可使用VBscript或Jscript语言来设计,还可以通过plug-in的方式,使用由third party所提供的其他譬如REXX,Perl, Tcl等scripting语言

<script>标记

ASP默认的script语言vbscript,若要设定某一段ASP程序代码使用的script语言,可以使用"<script runat=server langrage=...>...</script>"加以设定,譬如ASP程序码使用Jscript语言:

<html>

<body>

<%call函数1%>

</body>

</html>

<script runat=server langrage=Jscript>

function函数1()

{

Response.write"叫到我了";

}

</script>

设定某一主页的script语言使用"<%@ language=...%>"加以设定,语法如下:

<%@ language= VBscript%>

注意:@和LANGUAGE之间一定要有空格。

一个主页使用多种语言

你可以在一个主页当中使用VBscript和jscript语言。方法如下:

一:使用多个"<script runat=server language=...%>...</script>"加以设定。

二:使用多个"#include"的语法。

#INCLUDE包含其他文件

你可以在ASP程序码中插入另外一个"被包括"的文件,执行到此时,先执行"被包括"文件,再继续执行下去。语法如下:

<!--#include virtual|file="filename"-->

其中virtual代表虚拟的文件地址,FILE代表绝对的文件地址,如下:

<!--#include virtual="/booksamp/test.inc"-->

<!--#include file="test/test.inc"-->

被包括的#include文件,也可在包含其他的"被包括"文件。

不能使用ASP程序码来设定"被包括"的#INCLUDE文件。如下的#INCLUDE文件将无法正确的执行:

<%name=(test&".inc"%>

<!--#include file="<%=name%>"-->

#INCLUDE不能置于<%...%>当中。如下的#INCLUDE文件将无法正确的执行:

<%

for i=1 to n

...

<!--#include file="test.inc"-->

next

%>

将#include置于<%...%>外即可。如下的#include文件可正确的执行:

<%

for i=1 to n

...

%>

<!--#include file="test.inc"-->

<%next%>

Active Server Pages简介(5)

表格的处理

表格(form)

将输入的数据传送到服务器的方法,是使用HTML标记<form>...</form>的表格,在用户端浏览器输入数据,点击"submit"按钮后,将输入的数据传送到服务器加以处理。表格的语法如下:

<form action=url method=get|post name="formname" onreset=event onsubmit=event target=window>

</form>

·action:处理输入的数据的站点服务器程序的url地址。

·method:输入的数据传送到服务器的方式,如下:

get:将输入的数据加在action设定的url地址后面,传送到服务器

post:按照http post传输数据的方式,将输入的数据传送到服务器

·name:设定form的名称

·onreset:点击"reset"的按钮时执行所设定的子程序event

·onsubmit:点击"submit"的按钮是执行的子程序event

·target:指定输入数据结果所显示的窗口名称

ASP取得表格(form)输入数据的方法

由表格的method可知,用户浏览器可以用如下的两种方法传送数据

1:get:用户端将数据加到url后,格式为"?字段1=输入数据1&字段2=输入数据2&...",再将它送到服务器.譬如ACTION设为http://www.abc.com,字段Name的输入数据为jack,字段age的输入数据为15,则使用的get方法,传给站点服务器的数据为http://www.abc.com?Name=jack&age=15.

2:post:用户端利用http信息数据字段将数据传送到服务器.

二:post:用户端利用HTTP信息数据字段传送到服务器。

ASP取得表格(form)输入数据的方法,是使用Active Server Pages一个内置的"对象"(object)---request,依据get,post方法而异:

get:使用"输入数据=Request.querystring("字段名"),将附加于url后的

数据取出,以取得此字段的输入数据。

post:使用"输入数据=Request.form("字段名"),读取HTTP信息数据字段,以取得字段的输入数据。

Request.querystring范例

范例:aspform.asp

使用Request.querystring("字段名"),将附加于url后的数据取出,譬如:

<a rel="external nofollow" href="aspform.asp?name=jack&age=15">

按此处,通过request.querystring取得name,age</a><p>

Name:<%=request.querystring("name")%><br>\

Age:<%=Request.querystring("age")%>

Request.querystring取出字段name的输入数据为Jack,字段Age的输入数据为15,

在用户端使用浏览器,浏览执行的结果如下:

按此处,通过request..querystring取得name,age

Name:jack

Age:15

Get范例

请看个例子。

范例:aspform.asp

这个例子的表格(form)使用Get方法,在用户端使用浏览器,浏览执行的结果如下,输入表格点击"写完了"按钮后,将显示处理的结果。

站点服务器aspform.asp文件的程序码如下,点击"submit"按钮后,执行站点服务器的asp1b.asp:

<form action="asp1b.asp" method="get">

姓名:<input type=text name="input1" value="大名">

<p>

特性:<select name="input2">

<option>戴眼睛

<option>小肚微凸

<option>漂亮

</select>

<p>

<input type=submit value="写完了">

</form>

asp1b.asp文件的ASP程序代码如下,由于表格(form)使用get方式,ASP程序码

使用"输入数据=request.querystring("字段名"),将附加于URL后的数据取出,

以取得此段的输入数据:

<html><body>

<%=request.querystring("input1")%>你好,你的特性是<%=

request.querystring("input2")%>

</body></html>

Request.form

Request.form读取HTTP信息数据的字段,以取得使用POST方式的表格form输入数据。语法如下:

request.form(name)[(index)|.count]

· name:字段名。

· index:当同一字段输入多个值时,指针值index指定要读取同一字段的那一个值。

范围由1到request.form(name).count

· count:由request.form(name).count可知name字段输入几个值。若无此name字段,

则count=0。

譬如以下的例子,其中input1为字段名,request.form("input1").count

得知input1字段输入几个值:

<%

for I= 1 to request.form("input1").count

response.write request.form("input1")(I)&"<br>"

next

%>

若input1有两个输入值,譬如为value1和value2,则以上的例子,在浏览器上将

显示:

value1

value2

同一字段输入多个值时,若未采用指针值index指定要读取哪一个值时,将得到多个值,各个值中间以逗点分隔。

你可以使用"for each item in request.form("字段名"),重复取得此字段输入的所有多个输入值,以上的例子也可由以下的程序得到相同的结果:

<%

for each item in request.form("input1")

response.write item&"<br>"

next

%>

你可以使用"for each x in request.form",重复取得所有字段的输入值,譬如:

<%for ecah x in request.form%>

<%request.form(<%=x%>)=<%= request.form(x)%><br>%>

<% next%>

若字段input1有两个输入值,譬如为value1和value2,则以上的例子,在浏览器上将

显示:

inut1=value1

input2=value2

Active Server Pages简介(6)

POST范例

让我们看一个POST的例子。

范例:aspform.asp

站点服务器aspform.asp文件的ASP程序代码如下:

<form action="asp1a.asp" method="post">

姓名:<input type=text name="input1" value="大名">

<p>特性:

<select multiple name="input2">

<option>戴眼睛

<option>小肚微凸

<option>漂亮

</select>

<p>

<input type=submit value="写完了">

</form>

写完后点击“写完了"按钮时,所执行的asp1a.asp文件的ASP程序代码如下:

<%=request.form("input1")%>你好,你的特性是<%=request.form("input2")%>

若传给asp1a.asp的值,可能为:

input1=jack&input2=小肚微凸+漂亮

则在用户端使用浏览器,浏览执行的结果如下,输入表格点击"写完了"按钮后,将显示处理的结果。

jack,您好,您的特性是小肚微凸,漂亮

若你设定name字段名,则站点服务器将解析此字段的输入值。若你需要未经解析的输入值,只须使用"request.form",不含name字段名。譬如asp1a.asp的ASP程序代码如下:

<%= request.form%>

若输入的与上面的例子相同,于用户端使用浏览器,浏览未经解析的输入值如下:

input1=jack&input2=%A4p%A8%7B%B7L%A5Y&input2=%BA%7D%ABG

Request.querystring

Request.querystring,读取HTTP信息数据字段位,以取得使用GET方式的表格form

输入的数据。

输入的字段和数据将接在<form action="URL地址">所设定的URL地址后面,

先加一个"?",字段和数据之间用"&"分隔之,譬如:

URL地址?input1= value1&input2=value2

Request.querystring将解析出输入的数据value1,value2.

语法如下:

request.querystring(name)[(index)|.count]

· name:字段名.

· index:当同一字段输入多个值时,指针值index指定要读取同一字段的那个值。

范围由1到request.querystring(name).count.

· count:由request.querystring(name).count可得知name字段输入几个值。

若无此name字段,则count=0.

Request.querystring解析在servervariables的Query_string变量。

同一字段输入多个值时,若未采用指针值index指定要读取哪个值,则将得到多个值,各个值中间以逗点分隔。

Active Server Pages简介(7)

站点数据库访问法

站点数据库的解决方案

如何让用户从浏览器画面中,通过internet或intranet,查询站点数据库的数据,甚至输入,更新和删除站点服务器的数据库信息呢?

访问数据库的解决方案有如下几种:

1:CGI(Commom Gateway Interface):传统方式。

2:IDC(Internet Database connector,Internet数据库连接器)

与IIS(Internet Information Server):简易的站点数据库访问解决方案。

3:ADC(Advanced Data Connector,先进的数据库连接器):在用户端的

浏览器上执行数据查询动作的频繁的数据查询解决方案。

4:ADO(ActiveX Data Object,Activex数据对象)与ASP(Active Server Pages):

完整的站点数据库访问解决方案。

Active Data Object与ASP

ActiveX Data Object

问数据库,可采用ASP内置的一个Activex Server component---Database

Access component(数据访问组件),使用ActiveX Data Object

(ActiveX数据对象,简称ADO)的技术,让你可以与Active Server pages(简称ASP)

结合,以提供访问数据库的功能。\

ActiveX Data Object(数据库访问组件,简称ADO)是什麽东西呢?Active Data Object的技术,让你可以与Active Server Pages结合,以建立提供数据库信息的主页内容,在主页画面执行Structured Query Language(结构化查询语言,简称SQL)命令,让用户在浏览器画面中输入,更新和删除站点服务器的数据库信息。

ADO使用RecordSets对象,作为数据的主要接口。

ADO可使用Vbscript,JavaScript语言来控制数据库的访问,与查询结果的输出显示画面。

ADO可连接多种的数据库,包括SQL Server,Oracle,Informix等支持ODBC的数据库。

ADO执行环境

在服务器端所需要的ADO执行环境如下:

1:windows NT server.

2:安装Internet Information Server(IIS)3.0(含)以上版本.

在用户端所需要的ADO执行环境,只需要一般的浏览器即可.

Active Server Pages简介(8)

数据库数据来源设定

若要访问NT站点的数据库,须于"控制台"中的"odbc"建立数据库名称(用户数据来源名称),数据库所用的驱动程序和数据库文件等.

新建数据库来源的步骤

执行"设定"的"控制台"中的"odbc",选择"用户数据来源名称",点击"添加"按钮,选定数据库所用的驱动程序,如为Access数据库,选定"Microsoft Access Driver",点击"完成"按钮.

在odbc设定中,在"数据来源名称"输入数据库名称,以便以后在程序中调用称呼,点击"选定按钮,选择数据库文件,然后点击"确定"按钮即可.

ADO数据库设计要领

只要几个步骤,就可以应用 Active Data Object(ActiveX数据对象,简称ADO)的技术,在站点服务器执行访问查询数据库的动作.

第一步:

ADO数据库设计要领的第一步,就是使用"Server.createobject"建立连接的对象,并使用"Open"打开待访问查询的数据库,如下

set conn= server.createobject("adodb.connection")

conn.open"数据库名称"

数据库名称即为在"ODBC"设定的"数据来源名称".

第二步

第二步设定SQL命令,使用"Execute"命令,即可开始执行访问查询数据库的动作.如下:

其中conn为第一步所设定的名称:

set rs= conn.execute(SQ)命令

第三步

第三步,使用如下recordsets对象的命令,显示查询的结果,其中rs为第二步所定义的名称:

.rs.fields.count:recourds的字段数.

.rs(i).name:第i(指针)个字段名,i由0算起到rs.fields.count-1.

.rs(i):读取第i(指针)个字段的记录,i由0算起到rs.fields.count-1.

.rs("字段名"):读取指定的字段的记录.

.rs.eof:是(true)否(false)已指定最末笔.

.rs.movenext:将指针移到下一笔.

.rs.moveprev:将指针移到上一笔.

.rs.movefirst:将指针移到第一笔.

.rs.movelast:将指针移到最末笔.

.rs.getrows:将查询结果存于数组当中,如v= rs.getgows(100),再读取数组v(col,row)的值即为查询的记录.

.rs.properties.count:得到ADO的Connection或Resultset的属性总数.

.rs.properties(item).name:得到ADO的Connection或 resultset的属性名称

.rs.properties(item):得到ADO的Connection或Resultset的属性值.

最后,在显示后使用如下的命令,关闭数据库:

rs.close

conn.close

譬如,将查询结果显示于一个表格的程序码如下:

<table border=1>

<tr>

<%for i=0 to rs.fields.count-1%>

<td><b><%=rs(i).name%></b></td>

<%next%>

</tr>

<%do while not rs.eof%>

<tr>

<%for i=0 to rs.fields.count-1%>

<td valign=top><%=rs(i)%></td>

<%next%>

</tr>

<%

rs.movetext

loop

rs.close

conn.close

%>

</table>

Active Server Pages简介(9)

查询数据

若要查询数据库的数据,则使用select的sql命令.

select的基本语法如下:

select字段名#1,字段名#2,...

from数据表名#1,数据表名#2,...

where条件表达式

order by字段名#1,字段名#2,...

.select:所接的字段明为待查询的字段,各字段名之间以逗号隔开.

.from:所接的数据表名称为待查询的数据库数据表名称,各数据表名之间以逗号隔开.

.where:所接的条件表达式为设定的查询条件表达式.

.order by:所接的字段名为排序的字段,将查询的数据加以排序.

指定多个字段时,先以字段名#1排序,若数据相同在按字段#2排序,...,各字段之间以逗号隔开.

更改数据库数据

若要更改数据库的记录,既在数据库中增加,更新,删除记录等,则可使用insert, update, delete的sql命令

......

asp动态网页设计

Access数据库文件(*.mdb)无法正常打开。

能出现这个错误,语法应该没问题,注意一下几个问题:

1路径是否正确,尤其是数据库连接文件在被包含调用的情况下。

2文件名是否正确

3数据库文件是否被损坏,用Microsoft Access打开一下看看

4如果你是放到服务器上的时候,注意看一下同目录下是否有*.ldb文件,其他文件如果出现某种代码编写错误会使数据库一直处于连接状态,那你这个文件再去访问数据库的时候,有可能出现这种情况。

asp 设计网站的登录系统

1,先建立一个数据库UserTest。

2,在里面建立一个表叫UsersTable,设计表,建立三个列:u_id, u_name, u_pwd。

3,u_id是int数据类型,自增1;u_name是nvarchar类型,长度12;u_pwd是varchar类型,长度12,然后保存该表。

4,打开表,在第一行u_name输入“abc”,u_pwd输入“abc”。关闭表。

5,打开VS,新建一个Web项目。双击默认的default.aspx页面,然后将<body>...</body>替换成下面的代码:

HTML code

<!--替换-->

<body style="margin: 0px">

<form id="form1" runat="server">

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; height: 50px">

<tr>

<td style="vertical-align: middle; width: 50%; text-align: center; font-weight: bold; font-size: 25px; color:#003366; font-family: Arial;">yunleizhilian的登录示范</td>

<td style="vertical-align: middle; text-align: left">

<asp:Panel ID="pnlLogin" runat="server" Height="30px" Width="100%">

用户名:<asp:TextBox ID="txbUserName" runat="server"></asp:TextBox>密码:

<!--对于密码TextBox,应把TextMode属性设置为Password,这样输入的值会以****形式出现,保护密码在输入时不被别人看到-->

<asp:TextBox ID="txbUserPassword" runat="server" TextMode="Password"></asp:TextBox>

<asp:Button ID="btnLogin" runat="server" Text="登录" OnClick="btnLogin_Click"/></asp:Panel>

<asp:Panel ID="pnlWelcome" runat="server" Height="30px" Width="100%">

<asp:Label ID="lblWelcome" runat="server"></asp:Label>

<asp:Button ID="btnQuit" runat="server" CausesValidation="False" Text="退出" Width="146px" OnClick="btnQuit_Click"/></asp:Panel>

</td>

</tr>

</table>

<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; height: 100px">

<tr>

<td style="vertical-align: middle; text-align: center">

<!--这个用来显示登录是否成功的信息-->

<asp:Label ID="lblMessage" runat="server" ForeColor="#C00000"></asp:Label></td>

</tr>

</table>

</form>

</body>

<!--替换结束-->

6,按F7,进入代码视图,在Page_Load()里写下面的代码:

C# code

protected void Page_Load(object sender, EventArgs e)

{

//确保页面是第一次被访问

if(!Page.IsPostBack)

{

CheckPageStatus();

}

}

//通过判断Session["UserName"]是否为空检查页面是否已登录(登录成功时会为Session["UserName"]注入值,就不空了。。否则就认为没有登录)。

private void CheckPageStatus()

{

if(Session["UserName"]!= null)

{

pnlLogin.Visible= false;

pnlWelcome.Visible= true;

lblWelcome.Text="欢迎登录,"+ Session["UserName"].ToString()+"同志";

}

else

{

pnlWelcome.Visible= false;

pnlLogin.Visible= true;

}

//这个用来接收登录或退出后的信息。个人习惯,你也可以不这么做。

if(Session["Message"]!= null)

{

lblMessage.Text= Session["Message"].ToString();

Session.Remove("Message");

}

else

lblMessage.Text="";

}

7,先告一段落,按F5运行下,看看效果,你会发现当没有登录时,“退出”那部分没有显示。真神奇啊。

8,然后关闭这个IE页面,按VS左下角的“设计”,切换到设计视图。

9,双击设计视图的“登录”按钮,为它编写登录代码如下:

C# code

protected void btnLogin_Click(object sender, EventArgs e)

{

//下面的登录方法只是我的习惯而已,我常用DataTable做所有的事情。建议你不要依赖它……否则会被人笑话的……登录的好方法有很多,参考下就好了。

string strConnection="SERVER=(local);DATABASE=UserTest;UID=sa;PWD=";//PWD=后面写上你的SQL SERVER的 sa密码。

System.Data.SqlClient.SqlConnection cn= new System.Data.SqlClient.SqlConnection(strConnection);

//SQL语句会吧?不会没办法,照抄吧。

string strSql="SELECT* FROM UsersTable WHERE u_name='"+ txbUserName.Text+"' AND u_pwd='"+ txbUserPassword.Text+"'";

//SqlDataAdapter这东西有什么用,建议你去查MSDN。

System.Data.SqlClient.SqlDataAdapter da= new System.Data.SqlClient.SqlDataAdapter(strSql, cn);

System.Data.DataTable dt= new DataTable();

da.Fill(dt);

if(dt.Rows.Count> 0)

{

Session["UserName"]= dt.Rows[0]["u_name"].ToString();

Session["Message"]="登录成功!";

Response.Redirect("default.aspx");

}

else

{

Session["Message"]="登录失败。请重新登录。";

Response.Redirect("default.aspx");

}

}

10,再按F5测试下,在用户名和密码内输入123,按下“登录”按钮,会提示登录失败。如果都输入abc,就会提示登录成功。因为数据库内只有abc这个用户。

11,关闭IE页面,最后我们做退出。

12,回到设计视图,双击“退出”按钮,为它编写下面的代码:

C# code

protected void btnQuit_Click(object sender, EventArgs e)

{

if(Session["UserName"]!= null)

{

Session.Remove("UserName");

Session["Message"]="退出成功,欢迎您再来啊";

Response.Redirect("default.aspx");

}

}

13,按F5运行,登录成功后,按“退出”按钮,系统会提示已经退出。

14,为了验证用户是否已登录,你需要在所有需要登录的页面的Page_Load()内添加:

C# code

if(Session["UserName"]!=null)

//用户可以访问。

else

//用户不能访问,扔回到登录页面:Response.Redirect("login.aspx");

15,基本如此,搞定。

关于asp网站设计的内容到此结束,希望对大家有所帮助。

网站提交入口 如何提交网站中国域名根服务器(根服务器是什么中国拥有自己的全球根服务器吗)