获得本站免费赞助空间请点这里
返回列表 发帖

用Dreamweaver制作ASP动态网页(图解五)

  第六步 查找密码系统
% G& |5 r7 P( S; n' D0 H  1,建立第一个页面 1.asp,其主要作用是让查找密码的朋友输入其用户名,很简单的页面:一个name文本输入框,和一个submit提交按钮。
* l% G0 f4 F( x/ v  8 q3 f5 c0 O( B7 ?, }3 o
  2,1.asp中选form标记,在相应的属性框中,“动作”填写2.asp,“方法”采用post。7 [6 [+ A3 n  k  W
  
& l# q/ \) Y- L5 O4 k( o; c" f2 j" j  3,保存1.asp,在站点里面新建2.asp,并打开它。1 h+ [  e0 ]+ o; _! c8 r2 h" ~! }2 N
  该页的作用有两个:5 R+ x) e( x+ o
  1,判断上一页,即1.asp所填写名字在数据库中是否存在。% J% e( B2 e0 B( Z# @; ]
  2,不存在应提示出错,存在则应将该用户的问题(question)字段内容显示。
. \9 V$ C3 p5 j3 G/ I9 m4 R  具体怎么实现呢?
0 r- y( i. t6 o. {; F+ }# l  4,2.asp上数据库已经连好。老方法,先绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。在弹出的“记录集”中就要好好设置了。最主要的就是“筛选”,选择"name" "=" "表单变量" "name"。
3 i. r6 l  p* y  意思是,要显示数据库表中字段name的内容,得有个条件,那就是:从上一页(1.asp)中书写的name表单内容要和库中的字段name值相等。
/ z1 `& y- X. v1 D7 T  0 h6 j9 J- \7 u4 N6 L) q
  5,其实切换到“高级”就可以看到自动生成的SQL代码,其中就有requeset.form("name"),意思就是把1.asp文本框中输入的值接受过来。/ W) E! `( ~, Z# R, S6 k
  
+ }. x5 i0 I! o* }  6,在2.asp页面敲入不存在该用户的提示语言"嘿嘿,这个用户还没有注册,所以你就没必要找密码了。"8 ^0 r# u: d4 Y5 Z: s
  换行再敲入存在该用户的语句。但与此同时还要注意把密码问题SHOW出来,以及问题的答案做成文本框。
% b' W; `( T( x3 K- S3 `/ Q0 A  
  L( a6 u1 @4 M  7,选中2.asp的form标签,属性面板中动作填写3.asp,方法采用post。3.asp主要就是用来判断问题和答案是否吻合,如吻合则显示正确密码了。注意!是问题和答案在一起。而我们当前只有答案可以传过去,那我们的问题该怎么传到3.asp呢?/ t# Y) v% i  h2 [- m' Y  l
  # d; M  }' q( r; T9 Z" d9 N1 P
  8,在“你的密码问题是:”后面插入光标,然后从“绑定”的“记录集”中选择“question”插入或者直接拖入到页面。注意!这还只是显示给用户密码问题,是不能将此信息传过去的。那怎么样才可以呢?
0 i3 ^7 O+ _" K1 L" U  
4 ~& [# b! @( Z) Q2 [! W! m( z  9,我们采用“隐藏域”来传送question的值。插入一“隐藏域”(PS:有人不会插入吗?呵呵),对“隐藏域”的属性进行修改:“隐藏区域”名称就叫"question"吧,“值”点击后面的闪电图标,弹出对话框中选择“question”。已经完成对“隐藏域”question的赋值,同样也可以进行传递。
# U1 N2 t) T6 `/ s3 q, L ) }; w: V0 ~* e( I  C' ^8 d7 m
  10,剩下的就是把2.asp中的两部分严格分开了。
4 P, S; v8 h+ U+ d, B' o  选中“嘿嘿,这个用户还没有注册,所以你就没必要找密码了。”这段文本。) W) r& m; T  C3 z* _: ]+ I0 s: P! ?
  “应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。' S6 P1 I! G6 H, N! J$ F8 p! T, K9 l
  弹出对话框中选择刚刚建立的recordset1即可。& m) G$ L2 i9 O! k1 b) ~: _7 J
  意思很明显:如果没有找到满足SQL语言查询的记录集就显示该行错误提示。
2 |5 L: Y/ o$ x! |5 e+ d  
. d% Q9 X$ k7 V0 ~  11,同样,选择form表单,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。- E2 ~7 G, p" Z2 z) h
  弹出对话框中选择刚刚建立的recordset1即可。# l1 D4 K- P2 X4 _! a2 N+ w9 l5 S
  意思也很清楚:如果有满足SQL语言查询的记录集就显示问题和答案书写框。
! h" i( W' ~+ S& r  最终效果页应该如下:
1 i6 T) n: g4 H- `6 c7 Z  
4 C. D: I7 w9 c7 ]; h' }" m! H3 D  总算把2.asp搞定了。总结下,该页主要起承上启下的作用。先要判断有没有这个用户,如果有,还有把密码问题显示出来,并要能传送到下一页3.asp
5 n: p2 @0 ~- M2 H! E5 o* x  12,那3.asp就要判断2.asp过来的密码问题以及答案是否和数据库中的吻合了。/ o5 ?3 a1 ?: L6 O/ Z9 q
  又有两个作用:不吻合,说明密码答案错,返回上页再来!吻合,那就规规矩矩地给人家密码吧,呵呵。
/ w4 @+ a" Y' m2 a  不过有了做2.asp的经验,做3.asp还不是小菜一碟!
9 p6 C' j0 [: ^& I  13,保存2.asp,在站点新建3.asp并且打开它。老规矩,绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。
# Z5 d) {5 \$ D8 [2 H( v  在弹出的“记录集”中就要值得你要小心注意了。
6 y& h9 U/ a1 `9 ^  “筛选”,选择"question" "=" "表单变量" "question"
# n2 U% ?' \$ a2 |0 o  ) N9 ~: P( Y' R6 A" P
  14,但你有没有注意到,我们要传送两个值给3.asp接受的,但现在只能一个进行选择。那该怎么办呢?切换到“高级”SQL的相关代码。我们要稍加添加。
: |1 m' d6 ~+ c$ U4 z  I$ u  SQL结构查询语言会一点,模仿能力强一点,呵呵就过来了!
- g! m6 t$ N7 E4 E* X  “变量”添加一个“MMAnswer”,“运行值”当然就是“request.form("answer")”了! y$ i' a2 q( A, ^- `
  然后把SQL语言加一下and answer = 'MMAnswer') z. X: L8 ~- s* u- }1 d$ ^
  看SQL的意思就明白了:必须要求 question and answer和数据库表中两字段的值吻合。. ~: ]3 P: j( j7 F
  
0 Y% u! O: {3 v( e  15,接着,象做2.asp样快速设计3.asp7 [2 ^, ?: J# p0 Y, F$ o
  页面上书写不吻合的语句“呵呵,你的问题答案不是这个吧,要不回去再试试? ”并且选中后,同样是“应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。) \0 A1 d, S7 [0 E9 `+ L
  接着是吻合的情况,“你的密码是:”的后面,从“绑定”“记录集”中选择“pwd”插入或者直接拖入到页面;
% C* ^: O( Z7 n. y' V  并且还要选中该部分,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。6 J7 R, X( O6 i. `& @( B3 x2 Z
  0 z$ g- q1 j" j6 H9 H: N- p
  16,保存3.asp,大功告成!来调试下。4 {; Y4 K! y! z* w6 l, b
  0 w- j& R8 s5 B8 ~
  : k0 _) k) o+ v. F% Y: v
第七步:修改资料篇0 H2 a: D2 M+ I) ^5 D
  修改资料!首先要清醒一点,什么人才可以修改。: S! D# r% y1 B2 ~: B3 S
  一,本人只能修改自己的;二,管理员可以修改所有人的。4 L2 i- W! E+ j9 t) Y! Z
  那今天先来搞个可以修改自己资料的页面。3 X, P7 F/ ]& W: N/ h# ]
  顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。
+ n% y' B8 G! f, Y/ E  还记得---菜鸟也学DW做ASP。(登录系统篇)( s( ]/ n" F  Z$ b8 w0 I/ {6 }, g# X
  这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。! g" S0 F' Z' v$ w$ _
  好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。1 k4 K* ~7 C3 @9 d$ l7 x! {4 C' G( v
  这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。
  ^! A$ t. m1 @, w) }! w; g( E$ w  那接着就是显示记录,来!动手了!- p1 Z" w( U0 p, g* B
  1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。
: w6 m" t# ~( h( \$ Z$ \' R4 D  修改资料篇% v& Y1 R- R, b+ M/ }& Q# h& F" e
  今天是学习怎么做修改资料的ASP页面
! R) c) Z. W7 }$ z4 d3 h  修改资料!首先要清醒一点,什么人才可以修改。
7 u9 E( l# V/ ?  E) y  一,本人只能修改自己的;二,管理员可以修改所有人的。
3 f* H: [" U! A$ c" b; w  T  那今天先来搞个可以修改自己资料的页面。5 \! |$ b8 X1 I, T
  顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。' |- t! ]) D3 O" Z& K
  还记得---菜鸟也学DW做ASP。(登录系统篇)
* f, Y, A4 F( _7 J/ ?  这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。  a0 @# t; x. g8 B! y$ W' H0 n8 W
  好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。
. w2 M7 l& d. w# q3 J% E% X/ p  这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。
/ R1 p: c' B% s* w/ C. `  那接着就是显示记录,来!动手了!
+ I, e$ X; t, J8 W: o9 o0 p" S9 V  1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。
7 _, j- w" T  y4 v1 \  
& H3 {. `  X7 o# `9 e0 A8 ]! X" {  2,弹出的对话框中,好好设置下!主要是筛选那块:"name""=""阶段变量""MM_username"。
1 m" `6 `. w! V1 r  
2 }1 k! [& |3 m7 M+ _# `1 f6 Z  3,切换到“高级...”其实就是生成了SQL:SELECT * FROM user WHERE name='MMColParam' ,并且MMColParam是一变量,运行的时候被赋上Session("MM_username")值。2 Y/ |8 \% K' U" n6 B
  很好理解,loginok.asp所绑定以及要显示的记录,有一条件:就是按WHERE后面的去找。
" `! S6 Q4 I. j) c$ W/ K  不愁找不到!因为只有当Session("MM_username")不存在才找不到。
* x4 l: Z2 x2 Z# Y4 m/ X  而如果Session("MM_username")不存在那说明这家伙根本还没有正确登录。
' f+ m* s( O- r/ g2 S5 d  呵呵,有点像鸡和鸡蛋的问题。
! Y. {; ?: j+ a2 |9 Q  
; M( l5 z  |( H; R" U  4,其实,这个时候你只要选择“应用程序”--“更新记录表单”就可以做我们的修改了。3 K; a- ^4 H7 T7 {5 `# c% Y
  但个人感受,先不去用这个,采用其它的办法同样可以,并且还能学到更多的知识。何乐而不为?
  z2 g$ V+ V5 [. b  p' Z  + ~" A# l( ~$ z& A7 b  G
  5,下面,那就跟我来。再让你学一手主详细页面的制作。
% g& |6 z; m/ C  t5 m  有关主详细页,顾名思义。先来个笼统的显示(主要的),对哪个感兴趣,常会来个“详情请进”。
, n7 O2 K# {( E" d  当然在这个页子里面是没有多大用处的,因为主来详去就你一个用户信息。$ e( x! O2 G; b/ M" z! v. y- g4 N
  但如果是管理员的页面呢?对这个用户具体查看一下就要用到了。, y0 f2 ]5 Q$ q7 c* |  ^5 ^
  
8 f4 }$ N4 K7 D. l  6,在弹出的对话框中,"记录集"Recordset1无需理会,"主页字段"意思就是在主页面上要显示的字段信息。# M9 E3 l$ I, S( z& E2 Y
  因为是主,其他不要显示的字段就一个个按“—”删除吧,主得只剩下大名name。
0 I$ k3 H6 [/ n+ u5 U1 @7 l# E  那下面的连接到详细信息就只有选择“name”了。6 K0 c! s- Y1 n" H6 N6 O7 `9 i4 h
  “传递唯一键”就选自动编号ID吧,当然其他的也可以选,但一定要确认你所选的在数据库表中一定要有内容。比如一些人注册的时候QQ号码不一定写,那这时候你就不能选oicq做为“传递唯一键”7 c" D7 H  @2 {8 @  V
  (所谓“传递唯一键”,就是asp中传递URL参数值。君不见xxx网址是http://www.cnbruce.com/blog/showlog.asp?cat_id=27&;log_id=219,那“?”后面的是什么玩意,cat_id就是参数,27就是值,当然后面不光只要一个参数,多个参数就用&连起来。当然这些东西,学asp的都知道了。DW做,呵呵,不要理解这么多,但你一定要学。)
5 Y7 J8 d  x' s3 {& e2 g  然后是"详细页名称",因为还没有做,当然推荐你先不做,为什么?自有玄机!: F. E2 s" m' N( j+ N1 {: ]
  就先命名个“xiangxi.asp”吧。
6 S& ~4 L) j, x  “详细页字段”就不改吧。好!确定。
1 M9 U+ B* J% i  
! v  i) R" ~8 r3 r7 B  7,确定后,一段时间的等待,突然发现,DW自动生成了xingxi.asp(刚才玄机所在)。不光页面内容生成,连“记录集”也绑定好了,动态文本也添加了。(真是服务周到)8 O/ V3 Z, a3 C0 x: S# s
  
% A( O& d. V7 I9 y' R  8,再看看loginok.asp。有不少东西,看得眼睛发呆,这些大都是和xiangxi.asp进行挂钩连接用的,不是垃圾,甭怕,呵呵。3 v" _( m5 y6 N0 L% R
  
" P# A+ c3 a* F% A% ?# v' f3 ^2 G  9,然后做什么事呢?回到xiangxi.asp吧。我们要修改资料,那得有些文本的框框让我填写啊。那这时候就有个死办法,先选中整个表瘢琧trl+x把表格给剪了。立马回到表单工具部分,插入表单,在出来的虚线框中ctrl+v粘贴过来。$ Y$ a. c9 N! j. I3 {, \
  
+ u1 i% b+ g' D, W. x! B! y/ {  10,接下来,添加文本框。先把{Recordset1.xxx}一个一个删掉,只留下一个ID和name因为这两个不需要修改,也不能修改!
: F% I6 y; y$ c/ j+ M5 v  其余的,换成对应的文本框,注意“文本域”打上对应的名字。- S: ~( r# Q: S' F) S" J4 I0 g. H3 u
  在对表格加一行,添加两个按钮。$ B! L9 n$ I1 |2 W: n2 U
  
/ f) _+ A. g$ K5 L  u7 j2 e  11,再想想,那些文本框里面是不是空的,正常修改资料的时候还会显示到原有的信息的。所以,选中表单。“应用程序”“绑定”“记录集”中相应的字段。
+ U9 W5 K! {! g, H" j9 z) R  
) \! |) Y$ Z: N+ Y* U7 P/ F/ K  或者,采用文本框的属性里面设置初始值,点动态闪电图标,弹出对话框中选择对应字段。( W' n# ]0 q/ z' v) z- I
  
  ^+ k0 h/ k6 b! i  y9 _  12,好了以后,选中form表单。。“应用程序”--“服务器行为”--“+”--“更新记录”
# v/ D  \/ T( |  
$ j/ H5 p$ C: @( `/ Z2 j5 m  13,弹出窗口中,一般默认。“在更新后,转到:”老规矩先写个xiugaiok.html,以后再来建。
. M; ~% C3 N( L. F+ L6 l  
1 Z# G9 `3 V3 q3 a2 [- ]& y  14,当然,该页还没有结束,要添加“服务器行为”--“用户身份验证”--“限制对页的访问”,主要还是起保护作用,不能随便就能进入的。
) g" C# f/ x) h  最后在把xiugaiok.html做下了,大体内容:修改成功!返回loginok.asp。% c% ]  R* b+ i. b/ A. G
  基本完成,可以调试了。先从loginok.asp开始。因为是第一次打开窗口,根本没有登录,所以loginok.asp回自动转向到loginbad.html5 a+ T3 w, K1 a( D
  5 s; w; p6 v; Z$ O8 m* s
  返回到login.asp,一路填下去  O( ^3 {2 ]0 ^7 i
  
& P' {% {' `0 @  j  / t8 B7 ^& i( [
  点击“cnbruce”修改密码“789”确定!
: X* j7 p8 u9 b8 k5 @% h1 y  
3 I+ \3 e! X6 [6 r7 u$ n: k0 A  然后,你再返回到 login.asp看看更改密码是不是生效了!
3 ?. L) K) G$ p; _; y  最后:整个的修改页是越来越复杂了,我采用步骤比较多的方法,当然也附带学到了主详细页的用处。最主要是本人认为这样对初学者才有挑战性,能够灵活运用,扩展,修改,细化,都需要自己多练。有错误是正常的,需要你自己对错误的认识和摆平,只有这样,也许技术才会有所提高。
; ^4 u6 K4 A7 c# J' Z% d$ W
附件: 您需要登录才可以下载或查看附件。没有帐号?注册

返回列表
【捌玖网络】已经运行: