  
- UID
- 1
- 帖子
- 738
- 精华
- 28
- 积分
- 14249
- 金币
- 2415
- 威望
- 1647
- 贡献
- 1363
|
用Dreamweaver制作ASP动态网页(图解五)
第六步 查找密码系统
; b+ n) ~: a2 [4 Q3 K) n 1,建立第一个页面 1.asp,其主要作用是让查找密码的朋友输入其用户名,很简单的页面:一个name文本输入框,和一个submit提交按钮。+ X0 L% Q# v/ r5 I
8 |& j7 }3 g# ~( N- y) r
2,1.asp中选form标记,在相应的属性框中,“动作”填写2.asp,“方法”采用post。' p, b" S* Y; m9 c# p) d
0 r: g$ J$ ^/ m5 {; N
3,保存1.asp,在站点里面新建2.asp,并打开它。. N! |) a( E) n6 z0 j
该页的作用有两个:7 P6 J* y+ Q$ y7 w
1,判断上一页,即1.asp所填写名字在数据库中是否存在。* g/ W4 f: S' H# }) u9 V+ B
2,不存在应提示出错,存在则应将该用户的问题(question)字段内容显示。+ @8 r/ d# u+ S, a5 A9 p
具体怎么实现呢?
" i3 C( g7 T" _* @3 [, s, X& S 4,2.asp上数据库已经连好。老方法,先绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。在弹出的“记录集”中就要好好设置了。最主要的就是“筛选”,选择"name" "=" "表单变量" "name"。6 J6 [8 J; b6 `
意思是,要显示数据库表中字段name的内容,得有个条件,那就是:从上一页(1.asp)中书写的name表单内容要和库中的字段name值相等。; k7 S. }* A; b
8 f4 J4 g! y/ s. n4 _ 5,其实切换到“高级”就可以看到自动生成的SQL代码,其中就有requeset.form("name"),意思就是把1.asp文本框中输入的值接受过来。
! U* g& r/ E- n8 I O' c+ p 6 y5 L0 l" {# w f1 i
6,在2.asp页面敲入不存在该用户的提示语言"嘿嘿,这个用户还没有注册,所以你就没必要找密码了。"$ Y& h$ [1 \7 X2 k6 N
换行再敲入存在该用户的语句。但与此同时还要注意把密码问题SHOW出来,以及问题的答案做成文本框。1 N& ?7 ?# T+ X: Q @1 }! G
! q# F. @ Y; C2 P 7,选中2.asp的form标签,属性面板中动作填写3.asp,方法采用post。3.asp主要就是用来判断问题和答案是否吻合,如吻合则显示正确密码了。注意!是问题和答案在一起。而我们当前只有答案可以传过去,那我们的问题该怎么传到3.asp呢?
9 Z* f+ H6 [9 k w1 a
9 P- p9 j4 e4 |9 { 8,在“你的密码问题是:”后面插入光标,然后从“绑定”的“记录集”中选择“question”插入或者直接拖入到页面。注意!这还只是显示给用户密码问题,是不能将此信息传过去的。那怎么样才可以呢?! {9 Y# O+ m: c- Z0 |6 n2 e3 ]; _
3 D9 p0 d1 ~+ c) ] ?
9,我们采用“隐藏域”来传送question的值。插入一“隐藏域”(PS:有人不会插入吗?呵呵),对“隐藏域”的属性进行修改:“隐藏区域”名称就叫"question"吧,“值”点击后面的闪电图标,弹出对话框中选择“question”。已经完成对“隐藏域”question的赋值,同样也可以进行传递。
5 f* o0 z. ^7 C. B4 M' \2 Y
* o @8 _) q; X0 M 10,剩下的就是把2.asp中的两部分严格分开了。1 Y* H8 D5 ?5 p: d
选中“嘿嘿,这个用户还没有注册,所以你就没必要找密码了。”这段文本。7 m8 b3 q% N8 m: {
“应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。( B8 J2 z Z' \ i
弹出对话框中选择刚刚建立的recordset1即可。
/ y) p; Z$ Q5 x. i/ _* w# q 意思很明显:如果没有找到满足SQL语言查询的记录集就显示该行错误提示。
7 q9 q' r4 F. v# Z5 s$ v 7 f6 v, ^5 R& I* r5 P
11,同样,选择form表单,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。$ V3 `/ b) i7 L b
弹出对话框中选择刚刚建立的recordset1即可。
% {9 ~" [6 h! [# [6 y4 ^ 意思也很清楚:如果有满足SQL语言查询的记录集就显示问题和答案书写框。( y6 X+ T9 {$ F
最终效果页应该如下:0 R% y- G) u4 `. e* \
6 [9 A7 F: h$ M W. F 总算把2.asp搞定了。总结下,该页主要起承上启下的作用。先要判断有没有这个用户,如果有,还有把密码问题显示出来,并要能传送到下一页3.asp+ @3 F% m. w L v5 M
12,那3.asp就要判断2.asp过来的密码问题以及答案是否和数据库中的吻合了。
. O+ Z% I0 s& X5 N9 J, k0 X 又有两个作用:不吻合,说明密码答案错,返回上页再来!吻合,那就规规矩矩地给人家密码吧,呵呵。
! Z& X# [' i/ ]" N& k) M0 R 不过有了做2.asp的经验,做3.asp还不是小菜一碟!0 D; o" r. v4 B. D* H8 G
13,保存2.asp,在站点新建3.asp并且打开它。老规矩,绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。
: O0 Z8 C( w' c+ _% J 在弹出的“记录集”中就要值得你要小心注意了。6 X! I) }9 l5 \& z( x6 I: b. {
“筛选”,选择"question" "=" "表单变量" "question"
- A: p$ b. g8 M. @* Z' \ ! U" L+ Q, e. j' [# z
14,但你有没有注意到,我们要传送两个值给3.asp接受的,但现在只能一个进行选择。那该怎么办呢?切换到“高级”SQL的相关代码。我们要稍加添加。
1 U$ {1 A% [' j SQL结构查询语言会一点,模仿能力强一点,呵呵就过来了!
" L3 @- I. d6 ^/ Z+ C9 t1 Q6 j “变量”添加一个“MMAnswer”,“运行值”当然就是“request.form("answer")”了7 [) U e; i+ c8 U6 K
然后把SQL语言加一下and answer = 'MMAnswer'
. Q: R4 J7 W2 a% t, p 看SQL的意思就明白了:必须要求 question and answer和数据库表中两字段的值吻合。
2 ?0 V) e' {7 p+ {7 k1 Y/ `) ^, T- u & p; I0 ]" Q9 p( h
15,接着,象做2.asp样快速设计3.asp
& t3 ^" s' M. K& p3 w, z 页面上书写不吻合的语句“呵呵,你的问题答案不是这个吧,要不回去再试试? ”并且选中后,同样是“应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。5 U5 S6 w, M J6 [& ~9 y
接着是吻合的情况,“你的密码是:”的后面,从“绑定”“记录集”中选择“pwd”插入或者直接拖入到页面;
0 l! C6 ~5 J2 B5 i4 h% L$ K 并且还要选中该部分,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。
% R! S- ?. e m7 f( b2 H
D9 i6 @- Z5 L2 y 16,保存3.asp,大功告成!来调试下。
5 C3 S/ V1 U* x3 p4 ]0 n 8 n0 Q& z9 X) k$ H' Q
6 q v! }# [2 ^ O6 b% Z9 E1 j6 Q第七步:修改资料篇5 K( F( O5 }/ z u) ? G5 W3 E) r
修改资料!首先要清醒一点,什么人才可以修改。
# j& \! S7 q1 u. ^6 p2 P 一,本人只能修改自己的;二,管理员可以修改所有人的。
( t) D3 h1 F) Q& s% }5 R 那今天先来搞个可以修改自己资料的页面。% j. P- h; l' B J! t5 Y9 n2 J
顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。+ K# V4 Q$ H' g0 S4 p
还记得---菜鸟也学DW做ASP。(登录系统篇)) c" R; c0 I, A- m x
这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。
. H6 `, z6 g# R- ]4 e 好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。
- o9 Y$ [( ^) C+ z! E 这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。
7 {( S$ _3 H" o0 f4 c 那接着就是显示记录,来!动手了!% ~1 I4 o4 r- T4 g+ F' ^5 U2 e
1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。; \( a* X, y* a
修改资料篇
# W' G% J0 R: p0 F7 K 今天是学习怎么做修改资料的ASP页面4 ?/ u3 b! o) Y1 K
修改资料!首先要清醒一点,什么人才可以修改。0 L7 o6 p' j X. p
一,本人只能修改自己的;二,管理员可以修改所有人的。
, y/ P3 N4 `# } X* H7 p2 K' g 那今天先来搞个可以修改自己资料的页面。- }( f _8 {- k+ T( O' C/ C
顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。2 v9 C, m4 S$ s6 F! v6 i$ h7 i
还记得---菜鸟也学DW做ASP。(登录系统篇)
' V/ e' f" u2 d0 m) i+ j( ^& E 这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。( y! O7 D- ~1 b+ ?
好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。
: c: _5 o; F3 d+ ^8 x 这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。3 V8 k0 c* `* e) `) D" F3 m
那接着就是显示记录,来!动手了!- w+ d8 M8 U0 l! Q6 g/ k
1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。
0 ^1 t+ x, `1 t. t & A, Q& q6 f9 q( b4 u
2,弹出的对话框中,好好设置下!主要是筛选那块:"name""=""阶段变量""MM_username"。
- b# m4 H+ D. |$ B$ E
# w. N) q( x2 x0 i( r: R- S 3,切换到“高级...”其实就是生成了SQL:SELECT * FROM user WHERE name='MMColParam' ,并且MMColParam是一变量,运行的时候被赋上Session("MM_username")值。9 ?: ~8 M$ t1 P4 o8 |# [
很好理解,loginok.asp所绑定以及要显示的记录,有一条件:就是按WHERE后面的去找。
$ h: o3 i( O; A' l% l 不愁找不到!因为只有当Session("MM_username")不存在才找不到。
- i* \+ I$ n1 Q: y! N6 s 而如果Session("MM_username")不存在那说明这家伙根本还没有正确登录。
% c. y$ @" ]/ A9 E- k& }4 } 呵呵,有点像鸡和鸡蛋的问题。! H/ L& O: ^' |
6 j: _! ^/ _- o7 U0 W0 C q+ a 4,其实,这个时候你只要选择“应用程序”--“更新记录表单”就可以做我们的修改了。 b" p( S" p. V9 J3 T6 Z
但个人感受,先不去用这个,采用其它的办法同样可以,并且还能学到更多的知识。何乐而不为?
6 [2 j1 _; y& O 3 V2 m- ?% x+ j
5,下面,那就跟我来。再让你学一手主详细页面的制作。
- I& W9 a6 }5 e/ n/ a) H! p$ u7 t 有关主详细页,顾名思义。先来个笼统的显示(主要的),对哪个感兴趣,常会来个“详情请进”。
, ^3 y$ f$ F5 ] 当然在这个页子里面是没有多大用处的,因为主来详去就你一个用户信息。
" x' T4 p9 c4 b& e$ d6 j 但如果是管理员的页面呢?对这个用户具体查看一下就要用到了。6 Z2 v) r+ {* V/ a6 k
# X n9 C6 ~& m7 h1 w( n
6,在弹出的对话框中,"记录集"Recordset1无需理会,"主页字段"意思就是在主页面上要显示的字段信息。
3 ?' p: b; g' A) b; C& J9 S( W# \ 因为是主,其他不要显示的字段就一个个按“—”删除吧,主得只剩下大名name。* L8 e @; B" e. [3 ^; z
那下面的连接到详细信息就只有选择“name”了。
K4 i. B: e9 s( o& ]1 v “传递唯一键”就选自动编号ID吧,当然其他的也可以选,但一定要确认你所选的在数据库表中一定要有内容。比如一些人注册的时候QQ号码不一定写,那这时候你就不能选oicq做为“传递唯一键”
1 D1 J2 Y* I( `: I2 [ w% o4 [! Z (所谓“传递唯一键”,就是asp中传递URL参数值。君不见xxx网址是http://www.cnbruce.com/blog/showlog.asp?cat_id=27&;log_id=219,那“?”后面的是什么玩意,cat_id就是参数,27就是值,当然后面不光只要一个参数,多个参数就用&连起来。当然这些东西,学asp的都知道了。DW做,呵呵,不要理解这么多,但你一定要学。)
) ]) P J5 f2 k% t/ u" @ p4 U 然后是"详细页名称",因为还没有做,当然推荐你先不做,为什么?自有玄机!
, W* `4 v; x% o* R7 i7 j+ X- v9 W 就先命名个“xiangxi.asp”吧。' M. A* ?$ z# d& v8 Q
“详细页字段”就不改吧。好!确定。8 J% k B7 R# f
$ y! h/ \4 e8 p1 h' N6 F
7,确定后,一段时间的等待,突然发现,DW自动生成了xingxi.asp(刚才玄机所在)。不光页面内容生成,连“记录集”也绑定好了,动态文本也添加了。(真是服务周到)" ?' A, S% G& T7 @2 `
. [4 l; y7 z- { 8,再看看loginok.asp。有不少东西,看得眼睛发呆,这些大都是和xiangxi.asp进行挂钩连接用的,不是垃圾,甭怕,呵呵。! s4 z" J( n( P" }
! X9 B+ ~3 B. P 9,然后做什么事呢?回到xiangxi.asp吧。我们要修改资料,那得有些文本的框框让我填写啊。那这时候就有个死办法,先选中整个表瘢琧trl+x把表格给剪了。立马回到表单工具部分,插入表单,在出来的虚线框中ctrl+v粘贴过来。
* Q1 N+ y* g+ }: A( h8 U
, o& x" h7 N3 f3 }' d! p 10,接下来,添加文本框。先把{Recordset1.xxx}一个一个删掉,只留下一个ID和name因为这两个不需要修改,也不能修改!
/ |" N6 Z2 Y, ^: `3 Z, ` 其余的,换成对应的文本框,注意“文本域”打上对应的名字。
! h% ^; m' J S# h; Q* [! b 在对表格加一行,添加两个按钮。
$ o2 j- R1 p$ W6 L+ p$ ~ & A n$ S( w5 e: y$ ?
11,再想想,那些文本框里面是不是空的,正常修改资料的时候还会显示到原有的信息的。所以,选中表单。“应用程序”“绑定”“记录集”中相应的字段。/ ~/ O8 Z. f# ^! o" h
8 {! ~- C: e2 |0 p1 z- j
或者,采用文本框的属性里面设置初始值,点动态闪电图标,弹出对话框中选择对应字段。 Y& {8 r0 e2 m# o( K
3 ?( m: ?- R8 l# S8 _$ O 12,好了以后,选中form表单。。“应用程序”--“服务器行为”--“+”--“更新记录”
- b! _ B, r- B6 d( G$ T, n
& Q7 @. r0 ?8 u% Z% y2 H2 ~- I 13,弹出窗口中,一般默认。“在更新后,转到:”老规矩先写个xiugaiok.html,以后再来建。; s1 b; o1 K( a# \
; a5 o& n# ^0 S# ~) r
14,当然,该页还没有结束,要添加“服务器行为”--“用户身份验证”--“限制对页的访问”,主要还是起保护作用,不能随便就能进入的。
( S! C( T9 n* H! r 最后在把xiugaiok.html做下了,大体内容:修改成功!返回loginok.asp。
- G5 E8 [: t* o5 E3 f7 Z& K 基本完成,可以调试了。先从loginok.asp开始。因为是第一次打开窗口,根本没有登录,所以loginok.asp回自动转向到loginbad.html
6 Z) n. j9 V, t7 C; b) K% R ! F6 \! \% ~7 n
返回到login.asp,一路填下去
& S- g* z- L0 ]+ U$ N " j- }6 i9 V9 E3 S- j% `. @9 E
, v5 V7 N) v8 Y( O( a 点击“cnbruce”修改密码“789”确定!
6 a6 k' p# U' C( K* B& a 7 s2 L+ z/ A5 B9 M( o
然后,你再返回到 login.asp看看更改密码是不是生效了!
* z% s, g. u1 i* P 最后:整个的修改页是越来越复杂了,我采用步骤比较多的方法,当然也附带学到了主详细页的用处。最主要是本人认为这样对初学者才有挑战性,能够灵活运用,扩展,修改,细化,都需要自己多练。有错误是正常的,需要你自己对错误的认识和摆平,只有这样,也许技术才会有所提高。
% I% e: f2 z7 x) o3 B3 Z# P' D |
附件: 您需要登录才可以下载或查看附件。没有帐号?注册
|