|
  
- UID
- 1
- 帖子
- 738
- 精华
- 28
- 积分
- 14443
- 金币
- 2507
- 威望
- 1647
- 贡献
- 1455
|
用Dreamweaver制作ASP动态网页(图解五)
第六步 查找密码系统; L, |$ S4 z0 z; s
1,建立第一个页面 1.asp,其主要作用是让查找密码的朋友输入其用户名,很简单的页面:一个name文本输入框,和一个submit提交按钮。, E& ]9 h+ ?( J3 k2 W
$ j# I7 Z4 D$ D 2,1.asp中选form标记,在相应的属性框中,“动作”填写2.asp,“方法”采用post。
7 y' l' M; |+ D# b0 P8 b* V# A! i$ d ' @0 q4 v! S/ `: G, n& \
3,保存1.asp,在站点里面新建2.asp,并打开它。
- P7 c* ], r9 C( V, @ 该页的作用有两个:( I& w* M9 }7 o" o
1,判断上一页,即1.asp所填写名字在数据库中是否存在。6 \- T9 S; j, \+ ?9 p' R! {8 W. |
2,不存在应提示出错,存在则应将该用户的问题(question)字段内容显示。. H" ?: I$ w- O# N B x
具体怎么实现呢?
! c e* k* e/ {) s2 s, C 4,2.asp上数据库已经连好。老方法,先绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。在弹出的“记录集”中就要好好设置了。最主要的就是“筛选”,选择"name" "=" "表单变量" "name"。% Z3 j0 k( i& C, ~; O; p
意思是,要显示数据库表中字段name的内容,得有个条件,那就是:从上一页(1.asp)中书写的name表单内容要和库中的字段name值相等。
4 G. t- T% v. ^) F- W + X# k9 f4 e. |7 A9 v' E( _; I
5,其实切换到“高级”就可以看到自动生成的SQL代码,其中就有requeset.form("name"),意思就是把1.asp文本框中输入的值接受过来。
. Z$ h1 |6 ]; O4 B4 y+ j 5 p V* Y6 S4 C7 N$ L0 Q
6,在2.asp页面敲入不存在该用户的提示语言"嘿嘿,这个用户还没有注册,所以你就没必要找密码了。"
; s' H& N2 m/ C3 ^6 r: k 换行再敲入存在该用户的语句。但与此同时还要注意把密码问题SHOW出来,以及问题的答案做成文本框。
9 B W- v0 i: _
' J1 n+ W1 \' a4 r 7,选中2.asp的form标签,属性面板中动作填写3.asp,方法采用post。3.asp主要就是用来判断问题和答案是否吻合,如吻合则显示正确密码了。注意!是问题和答案在一起。而我们当前只有答案可以传过去,那我们的问题该怎么传到3.asp呢?8 Q% M$ M# K6 E% S7 N% s! i+ u
" o+ p+ ~, [6 ]2 k 8,在“你的密码问题是:”后面插入光标,然后从“绑定”的“记录集”中选择“question”插入或者直接拖入到页面。注意!这还只是显示给用户密码问题,是不能将此信息传过去的。那怎么样才可以呢?7 E5 b; D8 b" ~4 G' o3 L. A
" F6 t5 a1 D' L& x& i% n
9,我们采用“隐藏域”来传送question的值。插入一“隐藏域”(PS:有人不会插入吗?呵呵),对“隐藏域”的属性进行修改:“隐藏区域”名称就叫"question"吧,“值”点击后面的闪电图标,弹出对话框中选择“question”。已经完成对“隐藏域”question的赋值,同样也可以进行传递。" y7 C3 I! o" d- {
* ^8 U4 ?' q+ q. o+ i8 C 10,剩下的就是把2.asp中的两部分严格分开了。
( A2 d8 A6 V9 f; a 选中“嘿嘿,这个用户还没有注册,所以你就没必要找密码了。”这段文本。) q6 ]& @# ]. T+ J0 {+ M& s
“应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。
1 \; ~; p' o- |4 D 弹出对话框中选择刚刚建立的recordset1即可。
) V1 Q5 }. ?! C# C; D 意思很明显:如果没有找到满足SQL语言查询的记录集就显示该行错误提示。0 X4 ~: G3 W3 r" @% K [' e# i
" e: \' B W4 ] 11,同样,选择form表单,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。
6 g# `1 E) k# y9 a 弹出对话框中选择刚刚建立的recordset1即可。
( h9 v% L) I X' e5 j+ l4 I 意思也很清楚:如果有满足SQL语言查询的记录集就显示问题和答案书写框。
# o1 [ h" n0 r0 }/ r# m$ H 最终效果页应该如下:
' y& b5 [% ~- W5 a6 c 2 f5 y( w. n( ^& _" Q
总算把2.asp搞定了。总结下,该页主要起承上启下的作用。先要判断有没有这个用户,如果有,还有把密码问题显示出来,并要能传送到下一页3.asp
# D5 L5 E6 g0 k. R8 z- Y; u1 c 12,那3.asp就要判断2.asp过来的密码问题以及答案是否和数据库中的吻合了。
5 }- s; Y# L& t; C2 V, h2 ? 又有两个作用:不吻合,说明密码答案错,返回上页再来!吻合,那就规规矩矩地给人家密码吧,呵呵。
8 K- S3 Z4 k: b- i: p1 g( T 不过有了做2.asp的经验,做3.asp还不是小菜一碟!; a, a/ d; x( ^, C5 X* I1 A
13,保存2.asp,在站点新建3.asp并且打开它。老规矩,绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。
9 }5 J q' d: }$ v. P/ X1 C1 B 在弹出的“记录集”中就要值得你要小心注意了。" a2 u1 g! x. ~( W9 i' w! \* j
“筛选”,选择"question" "=" "表单变量" "question"
' [7 p& y/ |+ } K- y, L 2 N# y2 H( E5 ]6 l6 H& B& X. {
14,但你有没有注意到,我们要传送两个值给3.asp接受的,但现在只能一个进行选择。那该怎么办呢?切换到“高级”SQL的相关代码。我们要稍加添加。
3 U' [% K) t% y( i" C# y SQL结构查询语言会一点,模仿能力强一点,呵呵就过来了!& {2 M; E) }! P
“变量”添加一个“MMAnswer”,“运行值”当然就是“request.form("answer")”了1 r$ U3 o# e5 P% ?# f$ l
然后把SQL语言加一下and answer = 'MMAnswer') R* Z4 E3 T8 D% ?/ s
看SQL的意思就明白了:必须要求 question and answer和数据库表中两字段的值吻合。
8 r- L K* n1 F; L! I7 a! u
0 F* U+ r7 N6 h3 V1 _2 g7 C 15,接着,象做2.asp样快速设计3.asp
* R% _. u- A0 h; M 页面上书写不吻合的语句“呵呵,你的问题答案不是这个吧,要不回去再试试? ”并且选中后,同样是“应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。) Z- X# R5 i7 S+ Q( }2 f
接着是吻合的情况,“你的密码是:”的后面,从“绑定”“记录集”中选择“pwd”插入或者直接拖入到页面;1 f+ N% `+ ]3 l# o/ Z2 x0 Z" y
并且还要选中该部分,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。* M1 D# k/ a( T% B+ _- r
$ i7 ]: R0 T5 l! Q- ?6 C 16,保存3.asp,大功告成!来调试下。4 j7 g- x8 d8 t8 p$ w
: N! u+ m9 E# J2 g( M2 b
) g/ n/ l" a- e) R第七步:修改资料篇6 _* l5 F( A4 i
修改资料!首先要清醒一点,什么人才可以修改。
9 t* m* s) ^, L: C/ q7 a A 一,本人只能修改自己的;二,管理员可以修改所有人的。
- u7 p" N* U; b. B 那今天先来搞个可以修改自己资料的页面。
& [4 z" W! o% @5 Q: K/ x 顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。) Z4 G* n$ |: B( x
还记得---菜鸟也学DW做ASP。(登录系统篇)
; T% B+ L7 ~( M p' C; @3 s+ b0 r 这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。0 M+ \3 u) a( }4 f; e
好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。8 H0 p) N! @% Q& y( e* i5 j7 a
这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。
7 T" j: i4 z6 e9 E 那接着就是显示记录,来!动手了!
) Q+ O% O6 v0 m: S% w, M, \% x8 M 1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。
' a1 Y% o' ^, l( b 修改资料篇* L, L9 f& D" P7 u
今天是学习怎么做修改资料的ASP页面
0 ~ B4 g. C1 l 修改资料!首先要清醒一点,什么人才可以修改。
, f# Z$ o$ {+ L% U- } 一,本人只能修改自己的;二,管理员可以修改所有人的。% L* }, Q" J F- {
那今天先来搞个可以修改自己资料的页面。
+ C& [$ h' F; O( a7 o2 o6 C 顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。& y% h: V1 x: a3 y7 N& K
还记得---菜鸟也学DW做ASP。(登录系统篇)/ o2 T* v% r% z5 E# G5 N+ u
这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。7 d. K4 r5 h: j; n
好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。% o- H4 P$ }+ f* H3 S
这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。
# h+ F4 ~# O5 z2 @( R 那接着就是显示记录,来!动手了!; B/ `8 a; ~& O; g0 Y
1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。
; V3 k! L" F8 {
( ^( E& P! ]% O0 A8 S( {6 K 2,弹出的对话框中,好好设置下!主要是筛选那块:"name""=""阶段变量""MM_username"。
. A( G% ]1 v+ |5 T- x$ i
1 _$ d, S. s( S/ V 3,切换到“高级...”其实就是生成了SQL:SELECT * FROM user WHERE name='MMColParam' ,并且MMColParam是一变量,运行的时候被赋上Session("MM_username")值。7 u* S8 w( X* F& ^) {
很好理解,loginok.asp所绑定以及要显示的记录,有一条件:就是按WHERE后面的去找。8 L5 s! _$ n% h, M4 o- p ~5 a
不愁找不到!因为只有当Session("MM_username")不存在才找不到。
$ W5 O6 H2 }3 Y 而如果Session("MM_username")不存在那说明这家伙根本还没有正确登录。8 o r, k8 i. G: F _% x
呵呵,有点像鸡和鸡蛋的问题。* r+ F/ V/ Z- }
5 w6 Z3 n& M% ? x+ j: D. @& u" N
4,其实,这个时候你只要选择“应用程序”--“更新记录表单”就可以做我们的修改了。- s+ _6 {. i- x; |- r
但个人感受,先不去用这个,采用其它的办法同样可以,并且还能学到更多的知识。何乐而不为?: L6 v9 U' X. D2 F5 S) [
' y& z$ _2 c5 x. A, b c9 O7 r9 F 5,下面,那就跟我来。再让你学一手主详细页面的制作。
' `4 L% o+ Z3 K; _2 o+ |' g/ P# p0 q 有关主详细页,顾名思义。先来个笼统的显示(主要的),对哪个感兴趣,常会来个“详情请进”。6 V* _ W" b% H; ^) l
当然在这个页子里面是没有多大用处的,因为主来详去就你一个用户信息。
; D4 a+ X7 B& E4 z, @9 `9 g 但如果是管理员的页面呢?对这个用户具体查看一下就要用到了。
7 t+ E# T# S4 J$ u" ?& \
7 V9 I7 f; X# \5 [' ^3 @! z/ } 6,在弹出的对话框中,"记录集"Recordset1无需理会,"主页字段"意思就是在主页面上要显示的字段信息。2 `( Y6 t6 n* U: a$ f0 s, v+ |
因为是主,其他不要显示的字段就一个个按“—”删除吧,主得只剩下大名name。# b" p+ z* ^' S2 ^
那下面的连接到详细信息就只有选择“name”了。4 ^2 T; P) m* \9 f
“传递唯一键”就选自动编号ID吧,当然其他的也可以选,但一定要确认你所选的在数据库表中一定要有内容。比如一些人注册的时候QQ号码不一定写,那这时候你就不能选oicq做为“传递唯一键”% G3 v8 h+ U+ t
(所谓“传递唯一键”,就是asp中传递URL参数值。君不见xxx网址是http://www.cnbruce.com/blog/showlog.asp?cat_id=27&;log_id=219,那“?”后面的是什么玩意,cat_id就是参数,27就是值,当然后面不光只要一个参数,多个参数就用&连起来。当然这些东西,学asp的都知道了。DW做,呵呵,不要理解这么多,但你一定要学。)
R8 c$ O+ ?1 f' B 然后是"详细页名称",因为还没有做,当然推荐你先不做,为什么?自有玄机!
7 Y7 r0 M4 ~& j7 t ~ 就先命名个“xiangxi.asp”吧。, A2 c& G+ Q% s. b
“详细页字段”就不改吧。好!确定。# c4 c% c( l) B5 {. k) @
7 S/ D4 _# T% M( y: k: g8 q: y
7,确定后,一段时间的等待,突然发现,DW自动生成了xingxi.asp(刚才玄机所在)。不光页面内容生成,连“记录集”也绑定好了,动态文本也添加了。(真是服务周到)5 t8 {; o. F4 F& O
- G/ n# I+ Q: P 8,再看看loginok.asp。有不少东西,看得眼睛发呆,这些大都是和xiangxi.asp进行挂钩连接用的,不是垃圾,甭怕,呵呵。
7 I; l% ^" {0 K 3 L' ?4 t2 y: g2 T
9,然后做什么事呢?回到xiangxi.asp吧。我们要修改资料,那得有些文本的框框让我填写啊。那这时候就有个死办法,先选中整个表瘢琧trl+x把表格给剪了。立马回到表单工具部分,插入表单,在出来的虚线框中ctrl+v粘贴过来。. [. i6 D% Z' m1 ~$ y
2 {9 U+ N# U) Y2 ~( o
10,接下来,添加文本框。先把{Recordset1.xxx}一个一个删掉,只留下一个ID和name因为这两个不需要修改,也不能修改!+ I i% r1 u& }" h Q- D
其余的,换成对应的文本框,注意“文本域”打上对应的名字。0 b+ r: K" U$ `1 R* F) \
在对表格加一行,添加两个按钮。
; ]4 i/ m" K/ W E6 W + i& ^8 |0 P, U7 j7 [
11,再想想,那些文本框里面是不是空的,正常修改资料的时候还会显示到原有的信息的。所以,选中表单。“应用程序”“绑定”“记录集”中相应的字段。
% D4 r" ^. X! R3 u3 [
3 u/ z2 U |. l7 F# r9 Z" a 或者,采用文本框的属性里面设置初始值,点动态闪电图标,弹出对话框中选择对应字段。
8 {' s: L7 \* B, @
( K$ }, t0 L9 o$ m7 S 12,好了以后,选中form表单。。“应用程序”--“服务器行为”--“+”--“更新记录”& n) v* o8 H5 X+ N! n7 A
4 @4 I5 v% R, C
13,弹出窗口中,一般默认。“在更新后,转到:”老规矩先写个xiugaiok.html,以后再来建。
# z/ M- q3 O0 O0 |8 J ! O: c. T- e' {. i9 f5 A: H! b
14,当然,该页还没有结束,要添加“服务器行为”--“用户身份验证”--“限制对页的访问”,主要还是起保护作用,不能随便就能进入的。
/ _ Q+ @& p0 e- T& P 最后在把xiugaiok.html做下了,大体内容:修改成功!返回loginok.asp。! P9 X/ Y0 g) ~- Y2 X% H
基本完成,可以调试了。先从loginok.asp开始。因为是第一次打开窗口,根本没有登录,所以loginok.asp回自动转向到loginbad.html
7 B( B6 k$ E0 p7 J+ I
& s5 O5 b' i/ `. M0 B6 Z 返回到login.asp,一路填下去( j( M$ f+ R/ v
$ g7 x8 U! K' F2 M: E
+ |: q5 h' e, M5 j! s 点击“cnbruce”修改密码“789”确定!( O- W8 [6 C; ^5 S! r4 X8 `
$ x, U2 x$ I3 O' f! T8 g 然后,你再返回到 login.asp看看更改密码是不是生效了!
1 y4 S! L+ A( V! D3 U% N' Z: m/ D 最后:整个的修改页是越来越复杂了,我采用步骤比较多的方法,当然也附带学到了主详细页的用处。最主要是本人认为这样对初学者才有挑战性,能够灵活运用,扩展,修改,细化,都需要自己多练。有错误是正常的,需要你自己对错误的认识和摆平,只有这样,也许技术才会有所提高。 ( s7 k- B( G( t( |: Q* d2 N6 |0 r7 ~
|
附件: 您需要登录才可以下载或查看附件。没有帐号?注册
|