  
- UID
- 1
- 帖子
- 738
- 精华
- 28
- 积分
- 14171
- 金币
- 2376
- 威望
- 1647
- 贡献
- 1324
|
用Dreamweaver制作ASP动态网页(图解五)
第六步 查找密码系统0 V k3 m) T$ u7 \
1,建立第一个页面 1.asp,其主要作用是让查找密码的朋友输入其用户名,很简单的页面:一个name文本输入框,和一个submit提交按钮。
( P4 E- `- c S' o
0 V" A& C# a* J9 R$ a 2,1.asp中选form标记,在相应的属性框中,“动作”填写2.asp,“方法”采用post。3 m7 _# ~# p; |) J7 x
1 k' n* H- G* G" U 3,保存1.asp,在站点里面新建2.asp,并打开它。
1 H! R! P; c) X( L 该页的作用有两个:
8 u5 u) }: _# t& t, v 1,判断上一页,即1.asp所填写名字在数据库中是否存在。; ?) ~. {$ ^% Z8 a/ }" W) I
2,不存在应提示出错,存在则应将该用户的问题(question)字段内容显示。
+ c' V. l8 `' X# V8 U 具体怎么实现呢?) B5 q8 b1 k9 z. _! k1 S `
4,2.asp上数据库已经连好。老方法,先绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。在弹出的“记录集”中就要好好设置了。最主要的就是“筛选”,选择"name" "=" "表单变量" "name"。" i; i- k! m$ J' z6 y/ x0 B, X( k
意思是,要显示数据库表中字段name的内容,得有个条件,那就是:从上一页(1.asp)中书写的name表单内容要和库中的字段name值相等。
6 h3 j5 c6 `5 b- s& E
' C; R- y0 r0 x9 o" _ 5,其实切换到“高级”就可以看到自动生成的SQL代码,其中就有requeset.form("name"),意思就是把1.asp文本框中输入的值接受过来。
1 S1 B3 m& n; k5 E9 M( B3 ]# b7 m 3 X: ^! o( i2 u) ?+ P6 V& C1 w2 f
6,在2.asp页面敲入不存在该用户的提示语言"嘿嘿,这个用户还没有注册,所以你就没必要找密码了。"+ N% W5 N4 H$ Q
换行再敲入存在该用户的语句。但与此同时还要注意把密码问题SHOW出来,以及问题的答案做成文本框。. w# P/ I) C: _' M
9 _. R! C- m; g: \. e
7,选中2.asp的form标签,属性面板中动作填写3.asp,方法采用post。3.asp主要就是用来判断问题和答案是否吻合,如吻合则显示正确密码了。注意!是问题和答案在一起。而我们当前只有答案可以传过去,那我们的问题该怎么传到3.asp呢?. M K& v; u- x& _8 N+ S8 y3 d0 u3 |
X& \. F" j+ m; z( _. a0 E$ \ 8,在“你的密码问题是:”后面插入光标,然后从“绑定”的“记录集”中选择“question”插入或者直接拖入到页面。注意!这还只是显示给用户密码问题,是不能将此信息传过去的。那怎么样才可以呢?; P& \4 x- ]0 r2 _6 b/ h
/ d& y- q2 A( f" |$ U 9,我们采用“隐藏域”来传送question的值。插入一“隐藏域”(PS:有人不会插入吗?呵呵),对“隐藏域”的属性进行修改:“隐藏区域”名称就叫"question"吧,“值”点击后面的闪电图标,弹出对话框中选择“question”。已经完成对“隐藏域”question的赋值,同样也可以进行传递。
0 X" O: F4 D" Z5 G7 @# s
5 Q/ ^& V; y& f* a! Y 10,剩下的就是把2.asp中的两部分严格分开了。8 Q# e9 K# A$ |& i% z. D- q( t b
选中“嘿嘿,这个用户还没有注册,所以你就没必要找密码了。”这段文本。5 u, n5 r3 M1 ?
“应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。
( W8 P# v: }* Z1 c; l 弹出对话框中选择刚刚建立的recordset1即可。 U/ {- G) f) D. `
意思很明显:如果没有找到满足SQL语言查询的记录集就显示该行错误提示。6 w7 C. |8 D/ A' i$ H0 w* I
4 [/ W5 D3 {' H# |/ [. m" I6 h4 m 11,同样,选择form表单,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。/ I6 \5 l% t$ n* z/ n+ s: N
弹出对话框中选择刚刚建立的recordset1即可。3 E# ?9 R% Q2 a2 A8 o/ p3 y
意思也很清楚:如果有满足SQL语言查询的记录集就显示问题和答案书写框。
) Q1 S6 d0 L w7 e2 F; A/ } 最终效果页应该如下:
7 J) a) x4 o( S( D
6 g# t. H9 O2 i5 i3 M 总算把2.asp搞定了。总结下,该页主要起承上启下的作用。先要判断有没有这个用户,如果有,还有把密码问题显示出来,并要能传送到下一页3.asp
( K$ y+ c; ~, v$ O9 ?* I$ f, o1 Q 12,那3.asp就要判断2.asp过来的密码问题以及答案是否和数据库中的吻合了。/ [: q/ z8 e J' Y% Q
又有两个作用:不吻合,说明密码答案错,返回上页再来!吻合,那就规规矩矩地给人家密码吧,呵呵。
( _9 T" t/ V4 @4 e8 E' v0 p 不过有了做2.asp的经验,做3.asp还不是小菜一碟!2 \& F1 K! q m
13,保存2.asp,在站点新建3.asp并且打开它。老规矩,绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。
! o: E9 S2 [6 f$ f 在弹出的“记录集”中就要值得你要小心注意了。! z' W9 M7 M* ?% u
“筛选”,选择"question" "=" "表单变量" "question"
% P; w, M3 E$ ~3 M
; L. |5 q7 I. c3 C3 E 14,但你有没有注意到,我们要传送两个值给3.asp接受的,但现在只能一个进行选择。那该怎么办呢?切换到“高级”SQL的相关代码。我们要稍加添加。/ a- K' Q: }2 E1 L& J4 @
SQL结构查询语言会一点,模仿能力强一点,呵呵就过来了!
Y) N. h, M4 n9 c3 q" ~ “变量”添加一个“MMAnswer”,“运行值”当然就是“request.form("answer")”了
) n! Q Q4 D4 n6 f: V 然后把SQL语言加一下and answer = 'MMAnswer'
& M3 h; L' p9 z- Q/ x9 k3 r" ` 看SQL的意思就明白了:必须要求 question and answer和数据库表中两字段的值吻合。
9 c' U2 N! [$ s; X' T 4 e& G8 L1 F9 D/ C, G" f2 x' ?3 {
15,接着,象做2.asp样快速设计3.asp
! T7 T! O h( J 页面上书写不吻合的语句“呵呵,你的问题答案不是这个吧,要不回去再试试? ”并且选中后,同样是“应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。6 ^# J2 \ D5 S X8 k6 y7 W8 H
接着是吻合的情况,“你的密码是:”的后面,从“绑定”“记录集”中选择“pwd”插入或者直接拖入到页面; y7 f4 w) P% T: H. F8 c
并且还要选中该部分,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。 J6 K/ N' W; C
7 X4 m; B, H c' w" d& j# m
16,保存3.asp,大功告成!来调试下。, O1 H1 l8 }6 @; q+ n0 O: e' v
. F1 P- k; e; G. B8 J
8 b( P& [% ]; f4 w* A9 j" S第七步:修改资料篇5 c( q+ w/ X3 X7 A) Y
修改资料!首先要清醒一点,什么人才可以修改。 D6 w% R. Z3 r! |
一,本人只能修改自己的;二,管理员可以修改所有人的。
6 v0 i, Y2 V5 r7 h8 Y 那今天先来搞个可以修改自己资料的页面。
4 D3 V3 H, C0 b! Z0 ?* h# x+ B. | 顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。
7 A/ n% b' ^7 } 还记得---菜鸟也学DW做ASP。(登录系统篇)5 E4 g0 ]: Q7 q- y4 A2 }1 l" R' d( A7 c
这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。4 S- C. i2 R! W; g6 }! ~) h N T
好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。' m! x+ V0 x* L1 M d% F: [
这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。6 C) C. ~" u6 N+ }5 [5 I
那接着就是显示记录,来!动手了!
6 v4 n; v2 G$ B/ J+ R- M9 S 1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。
@8 N" k# X8 E 修改资料篇
4 ?6 X, ?, S/ m 今天是学习怎么做修改资料的ASP页面
7 D4 j# }, t; ?5 R, Q3 J" H( f 修改资料!首先要清醒一点,什么人才可以修改。2 N- d; v4 P4 }2 w% m
一,本人只能修改自己的;二,管理员可以修改所有人的。
& O( r- g/ J0 `/ P, u. O2 ?; k' e 那今天先来搞个可以修改自己资料的页面。
, Q6 R! r1 J1 a( y8 g4 A! s 顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。4 F6 J( q5 ]: J0 e+ |3 i. T$ S
还记得---菜鸟也学DW做ASP。(登录系统篇). f: T5 p( q& m0 U% r; |9 b
这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。
- o" {3 A8 `$ i9 \ 好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。2 S0 ~# A( R, H
这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。
$ [9 T1 V$ E/ v1 X- A 那接着就是显示记录,来!动手了!& `+ ]0 u; J! h& |! I4 T
1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。
, ^; r4 }( s+ L3 p! ?8 S4 D6 ` / p' u; `, E# n
2,弹出的对话框中,好好设置下!主要是筛选那块:"name""=""阶段变量""MM_username"。$ Y7 r, n" K& y4 `' K
% O1 }; N% I9 w9 B
3,切换到“高级...”其实就是生成了SQL:SELECT * FROM user WHERE name='MMColParam' ,并且MMColParam是一变量,运行的时候被赋上Session("MM_username")值。! R+ k# _3 k" ^4 a' o
很好理解,loginok.asp所绑定以及要显示的记录,有一条件:就是按WHERE后面的去找。
* C/ P Q. K. H7 d: h N' Y+ C 不愁找不到!因为只有当Session("MM_username")不存在才找不到。0 j- j9 I' Z, M
而如果Session("MM_username")不存在那说明这家伙根本还没有正确登录。
1 D4 q' n; Y! z8 c; K. i7 ^ 呵呵,有点像鸡和鸡蛋的问题。
: e9 p0 _0 X$ m @$ X1 Y- w 0 x. T v' O& B! `# o. M
4,其实,这个时候你只要选择“应用程序”--“更新记录表单”就可以做我们的修改了。
0 K) m, n' |) |) P: o 但个人感受,先不去用这个,采用其它的办法同样可以,并且还能学到更多的知识。何乐而不为?
1 \6 C" @+ H) o. z8 A5 g
1 z7 D; Q) `6 e, g; x+ ]: W 5,下面,那就跟我来。再让你学一手主详细页面的制作。
* [9 q: e& B8 d: Q0 u0 L- B: p 有关主详细页,顾名思义。先来个笼统的显示(主要的),对哪个感兴趣,常会来个“详情请进”。
1 v. p y) B- W( Q4 ?) k* A x 当然在这个页子里面是没有多大用处的,因为主来详去就你一个用户信息。; v+ K5 l5 Y" Y/ {
但如果是管理员的页面呢?对这个用户具体查看一下就要用到了。/ @* ]* T) a, l, u& k' D+ K# x" T
# T- z& p( A0 F* K! D) E 6,在弹出的对话框中,"记录集"Recordset1无需理会,"主页字段"意思就是在主页面上要显示的字段信息。
3 X' d# s$ c0 H" \' ? 因为是主,其他不要显示的字段就一个个按“—”删除吧,主得只剩下大名name。
~. r, s8 ^- d' x5 {+ k 那下面的连接到详细信息就只有选择“name”了。( E& _8 e/ H% ]3 O& s
“传递唯一键”就选自动编号ID吧,当然其他的也可以选,但一定要确认你所选的在数据库表中一定要有内容。比如一些人注册的时候QQ号码不一定写,那这时候你就不能选oicq做为“传递唯一键”
. Z0 W2 H8 P) w+ c% v5 h% r (所谓“传递唯一键”,就是asp中传递URL参数值。君不见xxx网址是http://www.cnbruce.com/blog/showlog.asp?cat_id=27&;log_id=219,那“?”后面的是什么玩意,cat_id就是参数,27就是值,当然后面不光只要一个参数,多个参数就用&连起来。当然这些东西,学asp的都知道了。DW做,呵呵,不要理解这么多,但你一定要学。)
# m5 W1 Z( E* U U1 a; @ 然后是"详细页名称",因为还没有做,当然推荐你先不做,为什么?自有玄机!
; R& a, @/ G$ s" E) `5 ] 就先命名个“xiangxi.asp”吧。
' {7 g2 t b! N' V+ [6 ? “详细页字段”就不改吧。好!确定。+ F4 t% Y, l0 c1 n" N
, k# A! e$ \6 o8 i 7,确定后,一段时间的等待,突然发现,DW自动生成了xingxi.asp(刚才玄机所在)。不光页面内容生成,连“记录集”也绑定好了,动态文本也添加了。(真是服务周到); ^9 E% j. ?5 S+ u6 n
. [) t! n% v+ d9 P
8,再看看loginok.asp。有不少东西,看得眼睛发呆,这些大都是和xiangxi.asp进行挂钩连接用的,不是垃圾,甭怕,呵呵。7 B2 |6 n* P1 g1 U6 [, ^
# ^# [8 @& S; o9 N) Q0 x ~
9,然后做什么事呢?回到xiangxi.asp吧。我们要修改资料,那得有些文本的框框让我填写啊。那这时候就有个死办法,先选中整个表瘢琧trl+x把表格给剪了。立马回到表单工具部分,插入表单,在出来的虚线框中ctrl+v粘贴过来。4 A* s \1 y9 G9 u! z) _. d
7 d) m' V1 d% i% m 10,接下来,添加文本框。先把{Recordset1.xxx}一个一个删掉,只留下一个ID和name因为这两个不需要修改,也不能修改!2 d! g6 o# u- W5 ~
其余的,换成对应的文本框,注意“文本域”打上对应的名字。
7 N% R0 E" v6 Z1 z9 Z' V 在对表格加一行,添加两个按钮。
2 U. [$ r3 q% { ' N$ f) {- D: I, i
11,再想想,那些文本框里面是不是空的,正常修改资料的时候还会显示到原有的信息的。所以,选中表单。“应用程序”“绑定”“记录集”中相应的字段。7 d% h2 Q9 s. f8 o$ N+ T" W$ Q
6 j8 G7 Y, T6 K. D 或者,采用文本框的属性里面设置初始值,点动态闪电图标,弹出对话框中选择对应字段。
F; V5 t8 J2 }/ y
* H1 A: L3 R5 ^ 12,好了以后,选中form表单。。“应用程序”--“服务器行为”--“+”--“更新记录”
8 C: g* f I2 m" D& U$ y3 U + H: x& l# m& u
13,弹出窗口中,一般默认。“在更新后,转到:”老规矩先写个xiugaiok.html,以后再来建。
, _$ E9 _. M" R, t ( @. [+ K0 e" z2 ]3 G, s; {
14,当然,该页还没有结束,要添加“服务器行为”--“用户身份验证”--“限制对页的访问”,主要还是起保护作用,不能随便就能进入的。/ j3 ?! ?2 t1 e. D R8 g! h: Z o
最后在把xiugaiok.html做下了,大体内容:修改成功!返回loginok.asp。
; G: S5 v8 P# N: t+ w, | 基本完成,可以调试了。先从loginok.asp开始。因为是第一次打开窗口,根本没有登录,所以loginok.asp回自动转向到loginbad.html
- U6 a7 T/ x" M; j6 N" G. e
2 g( u: |+ S7 D; V 返回到login.asp,一路填下去
/ J; L6 h b: E$ H/ f / T% g* b+ F" ^5 w8 O
4 r5 ^4 @2 T# g* Z: a% T; g/ D1 J
点击“cnbruce”修改密码“789”确定!
; O4 Q; f2 O/ O( P5 d F
5 X; l8 s/ A9 @7 P; w% y4 |4 O 然后,你再返回到 login.asp看看更改密码是不是生效了!7 W4 h; P* R2 E1 m. I' @# P( O
最后:整个的修改页是越来越复杂了,我采用步骤比较多的方法,当然也附带学到了主详细页的用处。最主要是本人认为这样对初学者才有挑战性,能够灵活运用,扩展,修改,细化,都需要自己多练。有错误是正常的,需要你自己对错误的认识和摆平,只有这样,也许技术才会有所提高。 2 o( c7 V% P8 o1 G
|
附件: 您需要登录才可以下载或查看附件。没有帐号?注册
|