返回列表 发帖

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

  第六步 查找密码系统
$ l9 S( X/ S' S. q  1,建立第一个页面 1.asp,其主要作用是让查找密码的朋友输入其用户名,很简单的页面:一个name文本输入框,和一个submit提交按钮。
4 [- U: m1 a& ?0 `- X- ?  
+ c+ y/ \" s" G  O5 r  m  2,1.asp中选form标记,在相应的属性框中,“动作”填写2.asp,“方法”采用post。# M: q! b# l) M' f8 D5 T$ b8 Y
  1 c9 D8 K3 s. z4 R  X
  3,保存1.asp,在站点里面新建2.asp,并打开它。8 q( F2 m, f1 E  j
  该页的作用有两个:/ j( t1 d4 ?6 `, s
  1,判断上一页,即1.asp所填写名字在数据库中是否存在。  V5 @$ C! a, C3 t7 |, Y
  2,不存在应提示出错,存在则应将该用户的问题(question)字段内容显示。
: ~8 T' G3 Z' m. R( @! g7 D9 y* k  具体怎么实现呢?
: C2 ?" B% D* t& I0 S  L  4,2.asp上数据库已经连好。老方法,先绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。在弹出的“记录集”中就要好好设置了。最主要的就是“筛选”,选择"name" "=" "表单变量" "name"。
2 a; b, ?: `, [1 J7 `2 U. L4 V$ j3 Y  意思是,要显示数据库表中字段name的内容,得有个条件,那就是:从上一页(1.asp)中书写的name表单内容要和库中的字段name值相等。6 m, Q7 E# _. D# N- Y( C. Z( g) r
  
) k. ?, J6 Z) Q1 ^2 ~1 c  5,其实切换到“高级”就可以看到自动生成的SQL代码,其中就有requeset.form("name"),意思就是把1.asp文本框中输入的值接受过来。2 T( |6 F+ C4 ~! o' I
  
6 A8 I2 Y& U: R+ U$ t" e$ k  6,在2.asp页面敲入不存在该用户的提示语言"嘿嘿,这个用户还没有注册,所以你就没必要找密码了。"& _. [) b# j$ i( d; _
  换行再敲入存在该用户的语句。但与此同时还要注意把密码问题SHOW出来,以及问题的答案做成文本框。
0 `7 _7 @& D" {4 F; x; A6 k$ F' N; B  - R8 p* d4 n8 _3 J
  7,选中2.asp的form标签,属性面板中动作填写3.asp,方法采用post。3.asp主要就是用来判断问题和答案是否吻合,如吻合则显示正确密码了。注意!是问题和答案在一起。而我们当前只有答案可以传过去,那我们的问题该怎么传到3.asp呢?1 q  \) {  X- ^( N" p! ]
  4 o* [. `" A1 r5 a  J1 F
  8,在“你的密码问题是:”后面插入光标,然后从“绑定”的“记录集”中选择“question”插入或者直接拖入到页面。注意!这还只是显示给用户密码问题,是不能将此信息传过去的。那怎么样才可以呢?/ l* J3 d2 @0 Q/ y( t
  & S7 d% T4 r+ V/ w; t8 v% ?1 Y+ f5 c5 k
  9,我们采用“隐藏域”来传送question的值。插入一“隐藏域”(PS:有人不会插入吗?呵呵),对“隐藏域”的属性进行修改:“隐藏区域”名称就叫"question"吧,“值”点击后面的闪电图标,弹出对话框中选择“question”。已经完成对“隐藏域”question的赋值,同样也可以进行传递。
" O" F* K1 h7 W5 R: f * I3 I+ V: \! F& w
  10,剩下的就是把2.asp中的两部分严格分开了。
9 O5 F6 N( r& A: ^  选中“嘿嘿,这个用户还没有注册,所以你就没必要找密码了。”这段文本。
) r9 c% E# y& c$ l  “应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。' ?  a8 O6 p8 ^6 ?1 q1 q
  弹出对话框中选择刚刚建立的recordset1即可。7 y  ?' W  g4 i8 l3 C
  意思很明显:如果没有找到满足SQL语言查询的记录集就显示该行错误提示。$ j( F9 H. `5 T8 \0 a
  
, n* v) ^9 P/ `1 `  11,同样,选择form表单,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。
( K/ J3 W- d+ q' |4 Z  弹出对话框中选择刚刚建立的recordset1即可。
; {8 h* \; J2 N& |- |  意思也很清楚:如果有满足SQL语言查询的记录集就显示问题和答案书写框。
; m/ V" t7 ~- Y% {3 Q7 x  最终效果页应该如下:2 I' `; O6 ~6 z5 t- b  ~
  
  e) _8 {; T' k9 m  总算把2.asp搞定了。总结下,该页主要起承上启下的作用。先要判断有没有这个用户,如果有,还有把密码问题显示出来,并要能传送到下一页3.asp
: M; B6 J+ a# I" b% r5 ]9 T2 _: B  12,那3.asp就要判断2.asp过来的密码问题以及答案是否和数据库中的吻合了。% Y' q( Q) d) Q: m) G0 }8 w! X
  又有两个作用:不吻合,说明密码答案错,返回上页再来!吻合,那就规规矩矩地给人家密码吧,呵呵。2 H- F& k  v* v
  不过有了做2.asp的经验,做3.asp还不是小菜一碟!+ f3 r9 l. [& u
  13,保存2.asp,在站点新建3.asp并且打开它。老规矩,绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。2 s# F4 p4 n9 B" G1 Y$ q
  在弹出的“记录集”中就要值得你要小心注意了。  h- N0 z* N% {* F3 `. I
  “筛选”,选择"question" "=" "表单变量" "question"5 U. Q% i* R6 Q/ \0 v. X9 ?$ d
  
6 `$ l9 g, I+ w  14,但你有没有注意到,我们要传送两个值给3.asp接受的,但现在只能一个进行选择。那该怎么办呢?切换到“高级”SQL的相关代码。我们要稍加添加。
2 w5 R4 t2 J+ S; _% o( e  SQL结构查询语言会一点,模仿能力强一点,呵呵就过来了!+ p4 ]2 A" I5 M
  “变量”添加一个“MMAnswer”,“运行值”当然就是“request.form("answer")”了6 Q2 j* V6 d( S1 d
  然后把SQL语言加一下and answer = 'MMAnswer'
5 K3 W" V1 F, [+ i* e) F7 \  看SQL的意思就明白了:必须要求 question and answer和数据库表中两字段的值吻合。% R; r2 e/ ~2 v/ ?
  
! M) n3 \5 t! F! Q  15,接着,象做2.asp样快速设计3.asp
' |5 T0 P  h# ?% ]  页面上书写不吻合的语句“呵呵,你的问题答案不是这个吧,要不回去再试试? ”并且选中后,同样是“应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。7 G7 E5 @6 l( r+ W
  接着是吻合的情况,“你的密码是:”的后面,从“绑定”“记录集”中选择“pwd”插入或者直接拖入到页面;
' i/ j9 t& i8 P/ J  并且还要选中该部分,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。
0 n! H1 r$ ~4 w- P5 e  
' I4 u* P# q2 G  16,保存3.asp,大功告成!来调试下。$ `5 U5 y3 j8 ?8 X6 b
  8 I$ p% V. v. w4 t
  + d' U0 P( {7 P; Y9 y
第七步:修改资料篇5 C8 k  \. r* Y) E) a1 b
  修改资料!首先要清醒一点,什么人才可以修改。' A; Q% V# `- u7 X! _
  一,本人只能修改自己的;二,管理员可以修改所有人的。- s. m5 t- y3 f6 o6 x8 ]
  那今天先来搞个可以修改自己资料的页面。& X. l; A5 b, e. s8 \% w2 x* S
  顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。4 Z+ f& f( t- {0 i- }
  还记得---菜鸟也学DW做ASP。(登录系统篇)
' n4 W% ]# Y9 R& O: F% P+ p, ?: R3 t  这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。1 Y1 X4 F& S; W/ t* _
  好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。* v/ a8 ?+ H! U2 p' P& w/ j5 \" p
  这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。
1 _+ {; O5 a& H4 U  \# b. T2 i9 l  那接着就是显示记录,来!动手了!
; Z: _- P$ U$ I" t( h  1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。
( F; _  Z- s+ O5 T7 W2 a, V6 Z  修改资料篇( @, @% k7 Q- z6 I3 o& b
  今天是学习怎么做修改资料的ASP页面
) _2 M1 s' t, ^  修改资料!首先要清醒一点,什么人才可以修改。
' ~/ B" I9 g  @. J9 h$ X  一,本人只能修改自己的;二,管理员可以修改所有人的。
$ @, S( X0 _* g  那今天先来搞个可以修改自己资料的页面。
- Q3 m6 w0 C# [$ e5 r8 |0 x  顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。! x" ]1 k2 N) m" k) B$ O
  还记得---菜鸟也学DW做ASP。(登录系统篇)4 A7 G' q" K# p# Y
  这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。
2 e1 x' g4 n6 ~% H! r  好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。
6 {/ C) ]$ i, T0 d+ F5 r9 l  W  这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。$ D; n2 i  B. |
  那接着就是显示记录,来!动手了!
+ x* s0 l9 f! T3 t" v! ^) I" C  1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。0 c- c- a( b. Y+ [) `+ h( {1 n$ M2 v
  + b( y: O# U9 H7 E' b
  2,弹出的对话框中,好好设置下!主要是筛选那块:"name""=""阶段变量""MM_username"。
" o/ m; k* z! Y% x  % M; Q3 }; y  u, v) ]
  3,切换到“高级...”其实就是生成了SQL:SELECT * FROM user WHERE name='MMColParam' ,并且MMColParam是一变量,运行的时候被赋上Session("MM_username")值。6 K2 Z0 G2 {# M
  很好理解,loginok.asp所绑定以及要显示的记录,有一条件:就是按WHERE后面的去找。
  r- P8 S" _! a9 V+ K3 e  不愁找不到!因为只有当Session("MM_username")不存在才找不到。
4 {3 k$ Y  `. E. h  而如果Session("MM_username")不存在那说明这家伙根本还没有正确登录。
+ H4 k  }+ h, f$ U* k  呵呵,有点像鸡和鸡蛋的问题。
0 \% W/ t  ?( B5 G. B  ( S/ l7 t4 ?0 J
  4,其实,这个时候你只要选择“应用程序”--“更新记录表单”就可以做我们的修改了。  _0 k# R! i/ t. a1 y9 W( Q
  但个人感受,先不去用这个,采用其它的办法同样可以,并且还能学到更多的知识。何乐而不为?
" k8 k. Q7 @+ F" h- W  ) a5 A1 g& t" }
  5,下面,那就跟我来。再让你学一手主详细页面的制作。. s+ }5 w' V3 B# K
  有关主详细页,顾名思义。先来个笼统的显示(主要的),对哪个感兴趣,常会来个“详情请进”。: o1 v2 T/ f, K, b3 f
  当然在这个页子里面是没有多大用处的,因为主来详去就你一个用户信息。5 Q1 l" J, M3 r9 ?( a
  但如果是管理员的页面呢?对这个用户具体查看一下就要用到了。3 R; q+ [# A3 U4 d  t8 v( D
  % [/ s/ y1 U& R7 X: h
  6,在弹出的对话框中,"记录集"Recordset1无需理会,"主页字段"意思就是在主页面上要显示的字段信息。
3 y  g7 C( A. a; m8 L/ K( W" K6 T/ x; V  因为是主,其他不要显示的字段就一个个按“—”删除吧,主得只剩下大名name。
; ]) B9 R# @, @  那下面的连接到详细信息就只有选择“name”了。+ g# i* Y0 A8 W7 i- Q2 u
  “传递唯一键”就选自动编号ID吧,当然其他的也可以选,但一定要确认你所选的在数据库表中一定要有内容。比如一些人注册的时候QQ号码不一定写,那这时候你就不能选oicq做为“传递唯一键”
$ f( x+ Y2 Z* Z  (所谓“传递唯一键”,就是asp中传递URL参数值。君不见xxx网址是http://www.cnbruce.com/blog/showlog.asp?cat_id=27&;log_id=219,那“?”后面的是什么玩意,cat_id就是参数,27就是值,当然后面不光只要一个参数,多个参数就用&连起来。当然这些东西,学asp的都知道了。DW做,呵呵,不要理解这么多,但你一定要学。)- V4 O8 J. B0 S. G( Y# u
  然后是"详细页名称",因为还没有做,当然推荐你先不做,为什么?自有玄机!! A& f# J' d. e/ I: O
  就先命名个“xiangxi.asp”吧。
* m) H9 f+ k7 ?  s; }+ T  “详细页字段”就不改吧。好!确定。8 \' W* x3 Z$ M  a" m/ M6 c+ p9 }
  
4 f7 g; F" t" U( k5 }& B  7,确定后,一段时间的等待,突然发现,DW自动生成了xingxi.asp(刚才玄机所在)。不光页面内容生成,连“记录集”也绑定好了,动态文本也添加了。(真是服务周到)
& @  _% r" a1 N% O  I
  , ~# i' T4 ]: O) a, z) W
  8,再看看loginok.asp。有不少东西,看得眼睛发呆,这些大都是和xiangxi.asp进行挂钩连接用的,不是垃圾,甭怕,呵呵。+ ~6 y" @, q. b, d. s" r* I
  
/ ^) m" j, N2 ^: M  9,然后做什么事呢?回到xiangxi.asp吧。我们要修改资料,那得有些文本的框框让我填写啊。那这时候就有个死办法,先选中整个表瘢琧trl+x把表格给剪了。立马回到表单工具部分,插入表单,在出来的虚线框中ctrl+v粘贴过来。1 x+ w3 k8 _! z/ E% ?! M
  2 W: {$ |4 c4 N  h( w
  10,接下来,添加文本框。先把{Recordset1.xxx}一个一个删掉,只留下一个ID和name因为这两个不需要修改,也不能修改!: W3 h+ m. D2 c
  其余的,换成对应的文本框,注意“文本域”打上对应的名字。
" L9 [& f- k: J; o3 {4 ?8 Z  在对表格加一行,添加两个按钮。+ x, _# K4 |. |) @3 c0 r/ F. l7 T- f" a
  
6 E/ G0 D' v- A6 G  11,再想想,那些文本框里面是不是空的,正常修改资料的时候还会显示到原有的信息的。所以,选中表单。“应用程序”“绑定”“记录集”中相应的字段。
( m" h. D% d% E- j& v8 [" }" x* K  ; i8 V1 S, }0 d  x
  或者,采用文本框的属性里面设置初始值,点动态闪电图标,弹出对话框中选择对应字段。  }1 ]7 z- E/ O. C
  3 J$ D" U5 M( G6 P# N
  12,好了以后,选中form表单。。“应用程序”--“服务器行为”--“+”--“更新记录”5 _$ P: G4 @5 U0 J
  9 Z( X! w. k+ K, R
  13,弹出窗口中,一般默认。“在更新后,转到:”老规矩先写个xiugaiok.html,以后再来建。
" v  J+ q" a/ z- l) x* H0 B: n  3 B/ Y& H5 c7 x
  14,当然,该页还没有结束,要添加“服务器行为”--“用户身份验证”--“限制对页的访问”,主要还是起保护作用,不能随便就能进入的。
) a; @/ k8 v' V* [  b  最后在把xiugaiok.html做下了,大体内容:修改成功!返回loginok.asp。
9 }8 l8 O5 g, ^6 x4 F% [! g( y  基本完成,可以调试了。先从loginok.asp开始。因为是第一次打开窗口,根本没有登录,所以loginok.asp回自动转向到loginbad.html
% w& K9 |2 `. ?. o) p5 S  
2 |" C8 d5 i" e+ H: ]  M! Y, v$ t  返回到login.asp,一路填下去5 V. L5 ]( F5 J$ m* k; D
  
% l8 A( |; r8 a) ?2 c. h9 a  
& X& k+ h4 Y& z# W' s: L  点击“cnbruce”修改密码“789”确定!0 g1 R- S0 W! z+ I$ X4 h$ M
  
6 t( T0 L4 V! X3 l  然后,你再返回到 login.asp看看更改密码是不是生效了!
9 M) |) P1 k; v! W: `  最后:整个的修改页是越来越复杂了,我采用步骤比较多的方法,当然也附带学到了主详细页的用处。最主要是本人认为这样对初学者才有挑战性,能够灵活运用,扩展,修改,细化,都需要自己多练。有错误是正常的,需要你自己对错误的认识和摆平,只有这样,也许技术才会有所提高。 9 o4 `' |8 T6 R" _9 x. e5 F% S
附件: 您需要登录才可以下载或查看附件。没有帐号?注册

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