|
  
- UID
- 1
- 帖子
- 738
- 精华
- 28
- 积分
- 14443
- 金币
- 2507
- 威望
- 1647
- 贡献
- 1455
|
用Dreamweaver制作ASP动态网页(图解五)
第六步 查找密码系统6 `- y/ F ]. B2 M2 o2 w; X7 b
1,建立第一个页面 1.asp,其主要作用是让查找密码的朋友输入其用户名,很简单的页面:一个name文本输入框,和一个submit提交按钮。
5 h2 }( ^ Q t0 | ) I) h" B" v) b3 E2 F, F
2,1.asp中选form标记,在相应的属性框中,“动作”填写2.asp,“方法”采用post。4 A. G5 c4 R4 m1 `
- d3 {0 S" W, f3 o 3,保存1.asp,在站点里面新建2.asp,并打开它。
% k& i) o- R$ b0 g 该页的作用有两个:0 u* @7 b6 m' Z( V# W: O
1,判断上一页,即1.asp所填写名字在数据库中是否存在。
2 ~8 r0 k5 P2 W6 z5 {4 G 2,不存在应提示出错,存在则应将该用户的问题(question)字段内容显示。( ]) g, E. i& s* l9 c8 O
具体怎么实现呢?5 J: r4 \& N, y/ ^' R! \/ w
4,2.asp上数据库已经连好。老方法,先绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。在弹出的“记录集”中就要好好设置了。最主要的就是“筛选”,选择"name" "=" "表单变量" "name"。
+ X' \ D" o7 U- P1 g 意思是,要显示数据库表中字段name的内容,得有个条件,那就是:从上一页(1.asp)中书写的name表单内容要和库中的字段name值相等。
4 ` J7 k+ i- \
' |/ `' p* [8 E: @3 f: |- H7 j 5,其实切换到“高级”就可以看到自动生成的SQL代码,其中就有requeset.form("name"),意思就是把1.asp文本框中输入的值接受过来。9 D: J1 g7 N3 o6 K( s, o6 g$ D$ A
% `( q! ]9 V0 ?& A3 y* ~ 6,在2.asp页面敲入不存在该用户的提示语言"嘿嘿,这个用户还没有注册,所以你就没必要找密码了。"5 ?! H3 K3 a3 |, N' Y) N% S
换行再敲入存在该用户的语句。但与此同时还要注意把密码问题SHOW出来,以及问题的答案做成文本框。1 R6 |/ D% _) q# \
# B" c2 w0 P# `+ V/ i1 q2 }5 N) D3 H 7,选中2.asp的form标签,属性面板中动作填写3.asp,方法采用post。3.asp主要就是用来判断问题和答案是否吻合,如吻合则显示正确密码了。注意!是问题和答案在一起。而我们当前只有答案可以传过去,那我们的问题该怎么传到3.asp呢?
6 | c: {. C/ z+ Z# o' V
. J5 z ~/ ~3 M1 I7 t) O 8,在“你的密码问题是:”后面插入光标,然后从“绑定”的“记录集”中选择“question”插入或者直接拖入到页面。注意!这还只是显示给用户密码问题,是不能将此信息传过去的。那怎么样才可以呢?
! M. s/ n, Q4 \ f% i$ L* g
2 p. K9 k3 p A& F( D% T* X; Y 9,我们采用“隐藏域”来传送question的值。插入一“隐藏域”(PS:有人不会插入吗?呵呵),对“隐藏域”的属性进行修改:“隐藏区域”名称就叫"question"吧,“值”点击后面的闪电图标,弹出对话框中选择“question”。已经完成对“隐藏域”question的赋值,同样也可以进行传递。
, |8 F* W) |: W! I7 L z% y
- B' q& _( t* Z4 _) e 10,剩下的就是把2.asp中的两部分严格分开了。+ y3 `- b E* S. T4 C4 H
选中“嘿嘿,这个用户还没有注册,所以你就没必要找密码了。”这段文本。5 B- Z7 _( O3 Z# i$ y5 x
“应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。" a/ Z+ ], Y, b
弹出对话框中选择刚刚建立的recordset1即可。
, O, w1 n; H6 c& u. c4 \6 X' Q 意思很明显:如果没有找到满足SQL语言查询的记录集就显示该行错误提示。, B# J B( h8 B1 r9 L5 Y. C
$ x( e c0 o$ K U$ }
11,同样,选择form表单,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。
% |% M: x0 V+ _ H 弹出对话框中选择刚刚建立的recordset1即可。
|( \6 i4 t/ u, z! D: Z 意思也很清楚:如果有满足SQL语言查询的记录集就显示问题和答案书写框。
1 B- k3 l7 P3 j/ K9 u8 E4 z 最终效果页应该如下:
) y" K% g |: {3 M: e3 Y2 I+ W
# f) V$ V! G x2 V! P 总算把2.asp搞定了。总结下,该页主要起承上启下的作用。先要判断有没有这个用户,如果有,还有把密码问题显示出来,并要能传送到下一页3.asp
% [0 |0 H0 ~, b 12,那3.asp就要判断2.asp过来的密码问题以及答案是否和数据库中的吻合了。
( f) h, q/ w; m& |! i/ Y 又有两个作用:不吻合,说明密码答案错,返回上页再来!吻合,那就规规矩矩地给人家密码吧,呵呵。
! f% z3 P2 p8 ] L& y1 p A0 c 不过有了做2.asp的经验,做3.asp还不是小菜一碟!
$ Q* I8 R& Q, ?" `4 u) R% ? 13,保存2.asp,在站点新建3.asp并且打开它。老规矩,绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。+ \. \0 U4 ^5 e5 f4 ~3 \
在弹出的“记录集”中就要值得你要小心注意了。
- f: h+ b6 k8 H& P9 {2 \ “筛选”,选择"question" "=" "表单变量" "question", U: J* \2 P" E$ | }+ I! T
) n( i) l5 q; k- z/ e; Z1 u 14,但你有没有注意到,我们要传送两个值给3.asp接受的,但现在只能一个进行选择。那该怎么办呢?切换到“高级”SQL的相关代码。我们要稍加添加。
8 l$ N' r+ v! L$ e3 l SQL结构查询语言会一点,模仿能力强一点,呵呵就过来了!$ t( N% Q5 K$ |6 {2 C) b1 t5 }! x7 w
“变量”添加一个“MMAnswer”,“运行值”当然就是“request.form("answer")”了, f3 N+ p% G) J# u1 H* J* V% J
然后把SQL语言加一下and answer = 'MMAnswer'
- {* s2 a3 b+ ^8 |3 T. n- J 看SQL的意思就明白了:必须要求 question and answer和数据库表中两字段的值吻合。
2 K/ [& P# \) _+ S6 p8 I
* Q2 e* |# N; T# R 15,接着,象做2.asp样快速设计3.asp9 ^! M+ j( K1 _- _
页面上书写不吻合的语句“呵呵,你的问题答案不是这个吧,要不回去再试试? ”并且选中后,同样是“应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。
" d+ _3 `: ^; v4 O 接着是吻合的情况,“你的密码是:”的后面,从“绑定”“记录集”中选择“pwd”插入或者直接拖入到页面;. a' `1 I! j3 \# X a, \) N% `. N
并且还要选中该部分,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。; o1 W0 T! \; W. K8 T0 W3 x
! S. n3 f( [6 M/ y 16,保存3.asp,大功告成!来调试下。
8 \* T% n, H* y/ Y
8 |$ U4 x+ m" {8 [ 4 g+ |5 T$ y- V( }- B4 y0 w. b7 `- o
第七步:修改资料篇( s' f: \5 O" Q1 ^5 ]
修改资料!首先要清醒一点,什么人才可以修改。9 {7 k" J' d2 f; P
一,本人只能修改自己的;二,管理员可以修改所有人的。" L) W. M6 i# Z% p# k# r
那今天先来搞个可以修改自己资料的页面。2 h U: K; T7 W) | K
顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。
, l9 a2 v5 i' n! C7 v5 I3 N 还记得---菜鸟也学DW做ASP。(登录系统篇)5 g9 Z7 a' B* f3 y3 ^
这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。
- }- d# \) D4 Q9 }5 i0 _# u 好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。
9 i% [# ~. O; @# |# X0 l0 P$ G 这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。; l/ v2 M' u+ U0 F$ f) `1 J
那接着就是显示记录,来!动手了!
/ c7 C! h, c. q `. E8 ] 1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。
Z$ y, T# b2 C% U* e6 B- A 修改资料篇) B) H; i0 L! ?
今天是学习怎么做修改资料的ASP页面
( R! Y9 [$ r7 Y9 b6 A: A 修改资料!首先要清醒一点,什么人才可以修改。
% Z1 |4 A$ F5 U3 W, C 一,本人只能修改自己的;二,管理员可以修改所有人的。
Q) f+ q3 ]1 K8 k/ S 那今天先来搞个可以修改自己资料的页面。. }1 |7 q/ S: D! y% ?0 p* e5 h `% ?
顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。
) i/ G! g2 v0 S* @6 k0 \ 还记得---菜鸟也学DW做ASP。(登录系统篇)
6 H( E0 M+ t4 K& D 这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。
! I0 V2 w. V, K. k U7 o' p 好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。8 a) O: E" i' H
这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。
- H$ s1 a5 z/ j1 G* X% e# W 那接着就是显示记录,来!动手了!
3 O+ b! u/ \1 e1 s( E 1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。0 E9 e: C+ j. j7 B! b% V0 G+ J
1 V3 b6 a7 S1 H3 m+ `! @ }
2,弹出的对话框中,好好设置下!主要是筛选那块:"name""=""阶段变量""MM_username"。4 j1 R8 t$ t* l a
/ r0 ~, ^# w8 m c2 V M; ~# Y8 P0 s
3,切换到“高级...”其实就是生成了SQL:SELECT * FROM user WHERE name='MMColParam' ,并且MMColParam是一变量,运行的时候被赋上Session("MM_username")值。' N7 H. }- u7 g2 v( }" p9 ~7 I
很好理解,loginok.asp所绑定以及要显示的记录,有一条件:就是按WHERE后面的去找。 B' \7 {' a4 a8 A/ P
不愁找不到!因为只有当Session("MM_username")不存在才找不到。8 b+ |0 a. L& J
而如果Session("MM_username")不存在那说明这家伙根本还没有正确登录。
/ n1 [- t2 v- t) n8 s 呵呵,有点像鸡和鸡蛋的问题。: b- }. H( D' h5 L0 Q& ~
( N% A& C5 ]6 x4 A5 Z, D 4,其实,这个时候你只要选择“应用程序”--“更新记录表单”就可以做我们的修改了。
9 z- S9 M% r+ h% T9 } 但个人感受,先不去用这个,采用其它的办法同样可以,并且还能学到更多的知识。何乐而不为?
2 s' b& Z1 b; g5 o
2 L6 F/ p, C8 P3 G2 f2 u 5,下面,那就跟我来。再让你学一手主详细页面的制作。6 C& H! S3 r& @* L9 f% g$ y
有关主详细页,顾名思义。先来个笼统的显示(主要的),对哪个感兴趣,常会来个“详情请进”。
: \: c, v* z2 E9 Q 当然在这个页子里面是没有多大用处的,因为主来详去就你一个用户信息。7 Q+ \6 I4 o' t+ f, H
但如果是管理员的页面呢?对这个用户具体查看一下就要用到了。
7 k# {5 x, |! U
+ G) [ j' m2 Z2 s5 [ 6,在弹出的对话框中,"记录集"Recordset1无需理会,"主页字段"意思就是在主页面上要显示的字段信息。
7 I* ^. Y; Z: w8 }8 k2 n5 \9 N 因为是主,其他不要显示的字段就一个个按“—”删除吧,主得只剩下大名name。
; K! p- }9 t$ | 那下面的连接到详细信息就只有选择“name”了。
- X0 ?1 z6 |0 a9 r9 M7 ^1 M “传递唯一键”就选自动编号ID吧,当然其他的也可以选,但一定要确认你所选的在数据库表中一定要有内容。比如一些人注册的时候QQ号码不一定写,那这时候你就不能选oicq做为“传递唯一键”
2 F. R4 n' C$ E' M& A- a4 L( Z! z (所谓“传递唯一键”,就是asp中传递URL参数值。君不见xxx网址是http://www.cnbruce.com/blog/showlog.asp?cat_id=27&;log_id=219,那“?”后面的是什么玩意,cat_id就是参数,27就是值,当然后面不光只要一个参数,多个参数就用&连起来。当然这些东西,学asp的都知道了。DW做,呵呵,不要理解这么多,但你一定要学。)) k o# }* a$ I. g8 U1 q* @
然后是"详细页名称",因为还没有做,当然推荐你先不做,为什么?自有玄机!) @' b7 ^ ~7 D* B; G3 Z. m' ^
就先命名个“xiangxi.asp”吧。- Z- G; g4 U2 I# a
“详细页字段”就不改吧。好!确定。
) L6 R3 d6 c+ ~1 R& ~
$ o$ z* Y3 R) B* S: ?# t4 x$ ` 7,确定后,一段时间的等待,突然发现,DW自动生成了xingxi.asp(刚才玄机所在)。不光页面内容生成,连“记录集”也绑定好了,动态文本也添加了。(真是服务周到)
' d+ t5 q* D6 H8 t- H. ~
3 T5 n% n+ G) ]) V0 E: O0 _ 8,再看看loginok.asp。有不少东西,看得眼睛发呆,这些大都是和xiangxi.asp进行挂钩连接用的,不是垃圾,甭怕,呵呵。4 V7 [. N6 b0 Y' U5 Q' X4 I
, B% s" `% x4 c1 ~' B0 |+ b 9,然后做什么事呢?回到xiangxi.asp吧。我们要修改资料,那得有些文本的框框让我填写啊。那这时候就有个死办法,先选中整个表瘢琧trl+x把表格给剪了。立马回到表单工具部分,插入表单,在出来的虚线框中ctrl+v粘贴过来。
7 V V! n& y) k/ c0 e- d2 E+ F ) J+ Z3 |$ y2 q5 u0 g+ Z
10,接下来,添加文本框。先把{Recordset1.xxx}一个一个删掉,只留下一个ID和name因为这两个不需要修改,也不能修改!7 i- J9 R B& H3 x: `
其余的,换成对应的文本框,注意“文本域”打上对应的名字。8 o* q! {) y$ `8 d, ~! k6 P7 e
在对表格加一行,添加两个按钮。
" L* R3 a1 F7 p& c1 i J( }0 E3 r. D# H
# q A, o8 S. V7 }' B 11,再想想,那些文本框里面是不是空的,正常修改资料的时候还会显示到原有的信息的。所以,选中表单。“应用程序”“绑定”“记录集”中相应的字段。
6 }; h( [5 S6 }. i" c+ p
$ K# H4 F5 R7 ~$ F9 \, n8 T, ~; Y1 T 或者,采用文本框的属性里面设置初始值,点动态闪电图标,弹出对话框中选择对应字段。& g3 `. H8 n' p( l/ m1 [/ }* R
( O, {1 e# p( i# O" n 12,好了以后,选中form表单。。“应用程序”--“服务器行为”--“+”--“更新记录”% |% {, L# v7 x& Q$ t
4 R# M* c; e, B& N2 f' q" u 13,弹出窗口中,一般默认。“在更新后,转到:”老规矩先写个xiugaiok.html,以后再来建。5 e1 H/ {2 U( c. ^8 _
$ E+ a5 w4 m! \7 g4 c( O 14,当然,该页还没有结束,要添加“服务器行为”--“用户身份验证”--“限制对页的访问”,主要还是起保护作用,不能随便就能进入的。+ o* d* ^( {0 u2 m/ |: C6 t
最后在把xiugaiok.html做下了,大体内容:修改成功!返回loginok.asp。 G, K" J2 t( P3 D% O K1 T7 \: n9 y
基本完成,可以调试了。先从loginok.asp开始。因为是第一次打开窗口,根本没有登录,所以loginok.asp回自动转向到loginbad.html( s/ V. R& {# a% k# m/ |
6 @0 } o I* N0 O 返回到login.asp,一路填下去2 S+ _* ~0 M, g+ e8 e8 ~! K
. V0 o v6 }3 N2 L% z
8 Y# G+ w- a% i 点击“cnbruce”修改密码“789”确定!
7 Z6 J* J4 |+ X1 `- d9 s4 C( I
! L9 V, z7 o+ s% h5 F9 C 然后,你再返回到 login.asp看看更改密码是不是生效了!
' J8 @' x9 C1 f E& s' N 最后:整个的修改页是越来越复杂了,我采用步骤比较多的方法,当然也附带学到了主详细页的用处。最主要是本人认为这样对初学者才有挑战性,能够灵活运用,扩展,修改,细化,都需要自己多练。有错误是正常的,需要你自己对错误的认识和摆平,只有这样,也许技术才会有所提高。
( v: X0 a* H; f9 i. N |
附件: 您需要登录才可以下载或查看附件。没有帐号?注册
|