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

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

  第六步 查找密码系统
2 L) H; h6 o8 J, @% }* ~  1,建立第一个页面 1.asp,其主要作用是让查找密码的朋友输入其用户名,很简单的页面:一个name文本输入框,和一个submit提交按钮。3 ~: F5 [9 Q/ @/ Z) l# w& |" n
  : L  t4 n4 G4 m" \
  2,1.asp中选form标记,在相应的属性框中,“动作”填写2.asp,“方法”采用post。# Y. g1 f, r2 G" |; k
  0 E- a0 W, H0 }: m' }
  3,保存1.asp,在站点里面新建2.asp,并打开它。
( r1 _  t1 g/ V3 `0 V# t& l6 o- ?  该页的作用有两个:) }1 i2 n. X5 v, J! u
  1,判断上一页,即1.asp所填写名字在数据库中是否存在。
- J  Z7 x) r9 X. o& [8 X" S  2,不存在应提示出错,存在则应将该用户的问题(question)字段内容显示。) y' f6 J& s- d: y
  具体怎么实现呢?
0 e3 W, w! @2 N6 ~, n9 a  4,2.asp上数据库已经连好。老方法,先绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。在弹出的“记录集”中就要好好设置了。最主要的就是“筛选”,选择"name" "=" "表单变量" "name"。
  D( I4 N+ {; {. X. `' [* o  意思是,要显示数据库表中字段name的内容,得有个条件,那就是:从上一页(1.asp)中书写的name表单内容要和库中的字段name值相等。4 K; d) Z8 @* m6 ^8 p
  
9 U! r8 j  B8 L0 G  5,其实切换到“高级”就可以看到自动生成的SQL代码,其中就有requeset.form("name"),意思就是把1.asp文本框中输入的值接受过来。
' b) z9 \  n9 K9 @1 G) m- }# T  
0 h, o  R2 |. S# R. C$ J  6,在2.asp页面敲入不存在该用户的提示语言"嘿嘿,这个用户还没有注册,所以你就没必要找密码了。"& G% k" z2 ]9 P( F* A0 N
  换行再敲入存在该用户的语句。但与此同时还要注意把密码问题SHOW出来,以及问题的答案做成文本框。1 I( I% H; s" Q
  
$ q8 R7 G! j  J, W  7,选中2.asp的form标签,属性面板中动作填写3.asp,方法采用post。3.asp主要就是用来判断问题和答案是否吻合,如吻合则显示正确密码了。注意!是问题和答案在一起。而我们当前只有答案可以传过去,那我们的问题该怎么传到3.asp呢?
! b% I5 t( N& Q0 x* ?  
3 r/ k' W) V8 R3 i: P. J0 j2 Y, D  8,在“你的密码问题是:”后面插入光标,然后从“绑定”的“记录集”中选择“question”插入或者直接拖入到页面。注意!这还只是显示给用户密码问题,是不能将此信息传过去的。那怎么样才可以呢?* C1 w' ]3 Q( \6 W6 C7 a. Y4 x
  / Q/ u9 ]6 `; I7 Y0 i3 Z1 Z
  9,我们采用“隐藏域”来传送question的值。插入一“隐藏域”(PS:有人不会插入吗?呵呵),对“隐藏域”的属性进行修改:“隐藏区域”名称就叫"question"吧,“值”点击后面的闪电图标,弹出对话框中选择“question”。已经完成对“隐藏域”question的赋值,同样也可以进行传递。
4 X& A" D! ?2 k: \! h5 ~, S7 y 
0 r0 k) |) W. M' e& n  t+ |  10,剩下的就是把2.asp中的两部分严格分开了。
, j  T, |& y5 V2 Q* ?  选中“嘿嘿,这个用户还没有注册,所以你就没必要找密码了。”这段文本。
1 F" i% @* ^$ u8 h/ `+ G  “应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。
# }) y- T7 Z& B: g4 c5 u  弹出对话框中选择刚刚建立的recordset1即可。# o6 I3 V5 A" J
  意思很明显:如果没有找到满足SQL语言查询的记录集就显示该行错误提示。
; V6 @7 g  Q8 ~3 g% P& B  
1 [$ N0 c7 w, c8 g  11,同样,选择form表单,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。6 U0 a4 d. |4 q
  弹出对话框中选择刚刚建立的recordset1即可。
/ H' o! J# ^+ u* I. f  意思也很清楚:如果有满足SQL语言查询的记录集就显示问题和答案书写框。
9 p7 K/ L$ _2 Z( w  最终效果页应该如下:. @  O4 |6 o8 @$ x
  
7 P. ~) ?$ w& }: G2 l" c0 P  总算把2.asp搞定了。总结下,该页主要起承上启下的作用。先要判断有没有这个用户,如果有,还有把密码问题显示出来,并要能传送到下一页3.asp
8 h6 {" G$ ?) N) z  12,那3.asp就要判断2.asp过来的密码问题以及答案是否和数据库中的吻合了。
% L0 C0 j6 H5 ]- L  又有两个作用:不吻合,说明密码答案错,返回上页再来!吻合,那就规规矩矩地给人家密码吧,呵呵。
4 `' @9 Y9 V' O  不过有了做2.asp的经验,做3.asp还不是小菜一碟!
0 G6 f/ ?0 {3 A) A8 b& }/ `$ B' _  13,保存2.asp,在站点新建3.asp并且打开它。老规矩,绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。
+ c$ Q- \1 T4 ]: s5 _4 P: g4 A# v  在弹出的“记录集”中就要值得你要小心注意了。
1 b- I2 ?& q, k. x  “筛选”,选择"question" "=" "表单变量" "question"
, `! T) v1 X$ @( L6 Y  / i# J( R# Y9 G) D
  14,但你有没有注意到,我们要传送两个值给3.asp接受的,但现在只能一个进行选择。那该怎么办呢?切换到“高级”SQL的相关代码。我们要稍加添加。
, ~3 E' N3 ]6 l, ?$ e  SQL结构查询语言会一点,模仿能力强一点,呵呵就过来了!+ R) f! l% G* Y8 h) k
  “变量”添加一个“MMAnswer”,“运行值”当然就是“request.form("answer")”了
( y# q( w9 P# }8 b: e  然后把SQL语言加一下and answer = 'MMAnswer'' r1 I7 |# E8 J
  看SQL的意思就明白了:必须要求 question and answer和数据库表中两字段的值吻合。0 {6 j" F; ^% B6 h
  
1 n% E& C: N% |$ S2 Z! R  15,接着,象做2.asp样快速设计3.asp
' O  n9 {4 r. d4 W  页面上书写不吻合的语句“呵呵,你的问题答案不是这个吧,要不回去再试试? ”并且选中后,同样是“应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。
: a- G  [* m2 x/ p2 _  接着是吻合的情况,“你的密码是:”的后面,从“绑定”“记录集”中选择“pwd”插入或者直接拖入到页面;% c0 H8 r5 A( @' F- o8 H' ~
  并且还要选中该部分,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。: b4 T5 {' D- h) \' a& g2 a# B+ X
  
4 J# O2 d4 W0 O2 S. d* P6 z8 X9 I. B  16,保存3.asp,大功告成!来调试下。
6 `) g% m1 o# P9 T) G. c- v  
( I/ F% D3 o$ p: }) R/ ~  
: C* S% E2 d+ b% w5 C. G/ S第七步:修改资料篇* S+ r1 J9 h+ R8 }8 L
  修改资料!首先要清醒一点,什么人才可以修改。
& O1 t$ ~# v$ R7 |  一,本人只能修改自己的;二,管理员可以修改所有人的。) R% I& Q* o( m
  那今天先来搞个可以修改自己资料的页面。# ^, \9 Z. e4 H
  顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。
9 `) C. {* E! [  还记得---菜鸟也学DW做ASP。(登录系统篇)& y( N3 c, W! F9 h# Q2 T0 [
  这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。! M9 w% w& b5 G" ^) W
  好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。
' F+ K4 E5 T$ b; d. s6 l! w  这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。$ c6 z) w6 \' m0 b) w! N
  那接着就是显示记录,来!动手了!2 L, w0 Y, l$ n- m9 H
  1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。. ~# @4 Z0 S! b7 ], O
  修改资料篇$ b) }$ F, m  [1 S* B
  今天是学习怎么做修改资料的ASP页面
$ {# T8 \; E9 v1 V  修改资料!首先要清醒一点,什么人才可以修改。
' M) R+ n: L( X" V. r  一,本人只能修改自己的;二,管理员可以修改所有人的。
8 G8 N# U) Y- ?, ~+ r  那今天先来搞个可以修改自己资料的页面。% o0 k, Q8 ?6 x4 a. L- O
  顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。
' A' ?  I) |$ N2 L  还记得---菜鸟也学DW做ASP。(登录系统篇)
  Z9 c! a2 f$ a  这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。
4 c3 f! n* C0 R' _! A# m$ j  好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。
- V: O( |+ r; |+ D4 r5 j  这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。
, ~& h; H$ n% k' |1 M1 d# L  那接着就是显示记录,来!动手了!* [+ F: }. v! J4 [* O! ]" s* l% S
  1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。0 ^7 R$ w0 M7 J' C
  + L7 n2 [" |, a8 t9 @
  2,弹出的对话框中,好好设置下!主要是筛选那块:"name""=""阶段变量""MM_username"。
3 S& Z. M: `' \* I  - q0 C; O& h0 P& j3 j( s
  3,切换到“高级...”其实就是生成了SQL:SELECT * FROM user WHERE name='MMColParam' ,并且MMColParam是一变量,运行的时候被赋上Session("MM_username")值。) ^! {5 K! W* _, |8 y
  很好理解,loginok.asp所绑定以及要显示的记录,有一条件:就是按WHERE后面的去找。4 v2 H7 e* r) S* J5 y0 A& G+ b
  不愁找不到!因为只有当Session("MM_username")不存在才找不到。) w# T6 q2 l9 W1 R* h
  而如果Session("MM_username")不存在那说明这家伙根本还没有正确登录。
- g  @" m" b: e+ ~4 t  呵呵,有点像鸡和鸡蛋的问题。! ?0 h  a. N( V, {( m8 l
  
( K3 g+ i5 f( s: M" r: p) d6 I3 J  4,其实,这个时候你只要选择“应用程序”--“更新记录表单”就可以做我们的修改了。; ]1 o/ U) c8 _& v" l
  但个人感受,先不去用这个,采用其它的办法同样可以,并且还能学到更多的知识。何乐而不为?9 R) Q" j& F- N% g0 y' v: T
  
5 ^& u8 h! }$ o/ _! Q  5,下面,那就跟我来。再让你学一手主详细页面的制作。) ]5 D* V  k7 \- [6 w& j; }- j
  有关主详细页,顾名思义。先来个笼统的显示(主要的),对哪个感兴趣,常会来个“详情请进”。) P. E) a2 S+ D3 k, }8 @
  当然在这个页子里面是没有多大用处的,因为主来详去就你一个用户信息。% z/ D# ~' ~" l: g8 L
  但如果是管理员的页面呢?对这个用户具体查看一下就要用到了。" j1 F; G# p! }
  
% B4 E% y0 A7 K; C5 q  6,在弹出的对话框中,"记录集"Recordset1无需理会,"主页字段"意思就是在主页面上要显示的字段信息。, h6 r$ m! ]/ h' U: \
  因为是主,其他不要显示的字段就一个个按“—”删除吧,主得只剩下大名name。6 y0 C8 V6 \1 c8 ]
  那下面的连接到详细信息就只有选择“name”了。
3 s9 H$ [/ |' ~  “传递唯一键”就选自动编号ID吧,当然其他的也可以选,但一定要确认你所选的在数据库表中一定要有内容。比如一些人注册的时候QQ号码不一定写,那这时候你就不能选oicq做为“传递唯一键”9 }  H% f) z* @6 l8 d
  (所谓“传递唯一键”,就是asp中传递URL参数值。君不见xxx网址是http://www.cnbruce.com/blog/showlog.asp?cat_id=27&;log_id=219,那“?”后面的是什么玩意,cat_id就是参数,27就是值,当然后面不光只要一个参数,多个参数就用&连起来。当然这些东西,学asp的都知道了。DW做,呵呵,不要理解这么多,但你一定要学。), r' [) X: i" d8 ^: M% y7 q
  然后是"详细页名称",因为还没有做,当然推荐你先不做,为什么?自有玄机!4 V) S2 {9 m1 {
  就先命名个“xiangxi.asp”吧。
/ H: s3 k2 L" x5 U2 a( F  “详细页字段”就不改吧。好!确定。8 \2 r$ H8 J0 D2 n$ T" |2 x7 N2 |
  3 d/ }; P! ^; I
  7,确定后,一段时间的等待,突然发现,DW自动生成了xingxi.asp(刚才玄机所在)。不光页面内容生成,连“记录集”也绑定好了,动态文本也添加了。(真是服务周到): ^" m' ]* c. Q! i% f$ F1 J
  
& y  Q5 ]3 |* F- a- ?/ l  8,再看看loginok.asp。有不少东西,看得眼睛发呆,这些大都是和xiangxi.asp进行挂钩连接用的,不是垃圾,甭怕,呵呵。+ i* r9 y$ A- @, @# E( N# P$ L
  
" X8 ]+ O" h1 K8 |" D) k) p  9,然后做什么事呢?回到xiangxi.asp吧。我们要修改资料,那得有些文本的框框让我填写啊。那这时候就有个死办法,先选中整个表瘢琧trl+x把表格给剪了。立马回到表单工具部分,插入表单,在出来的虚线框中ctrl+v粘贴过来。
# w4 T' F1 a2 Q) [- b1 S4 }    W9 y2 i8 Z* g* l* E. I3 j" h
  10,接下来,添加文本框。先把{Recordset1.xxx}一个一个删掉,只留下一个ID和name因为这两个不需要修改,也不能修改!5 n, R; W- [2 ~! v: q  E' s
  其余的,换成对应的文本框,注意“文本域”打上对应的名字。
$ j1 o; S- ~' Y  在对表格加一行,添加两个按钮。4 l; U6 O( `# V" z) I6 L9 `9 q
  5 Z2 m' j$ K- K: e0 j& G
  11,再想想,那些文本框里面是不是空的,正常修改资料的时候还会显示到原有的信息的。所以,选中表单。“应用程序”“绑定”“记录集”中相应的字段。5 m, C% i/ O6 t
  
3 s4 T! W, Q3 u  或者,采用文本框的属性里面设置初始值,点动态闪电图标,弹出对话框中选择对应字段。7 s- V$ k& N' I& m* x2 w2 s7 [% i( f
  
6 b1 I0 `( H' A( N: L  12,好了以后,选中form表单。。“应用程序”--“服务器行为”--“+”--“更新记录”
- `2 y  D  L1 H0 a* ~  1 h  u: O7 ~* d. }; E
  13,弹出窗口中,一般默认。“在更新后,转到:”老规矩先写个xiugaiok.html,以后再来建。$ B- w8 p# j- Y% Q
  . D7 o1 }4 p3 a' y! m$ I! J
  14,当然,该页还没有结束,要添加“服务器行为”--“用户身份验证”--“限制对页的访问”,主要还是起保护作用,不能随便就能进入的。
  u$ Q+ U) h1 N9 K  最后在把xiugaiok.html做下了,大体内容:修改成功!返回loginok.asp。: g9 B" |+ [; h$ o+ g
  基本完成,可以调试了。先从loginok.asp开始。因为是第一次打开窗口,根本没有登录,所以loginok.asp回自动转向到loginbad.html6 ?) v7 u+ ^2 j$ V
  
: U7 T  V) k! K& e* \1 m  返回到login.asp,一路填下去
) X) Q; ^1 T3 e. }' ~' @, W  - Q4 m- T# k! ?; _! M+ x0 n
  
4 ]5 l/ P# {0 Z  点击“cnbruce”修改密码“789”确定!6 M: v+ ]6 U2 c5 ]5 e  x& M
  
( D! d" I& G; K+ |  然后,你再返回到 login.asp看看更改密码是不是生效了!' M1 {2 z! n- `) d
  最后:整个的修改页是越来越复杂了,我采用步骤比较多的方法,当然也附带学到了主详细页的用处。最主要是本人认为这样对初学者才有挑战性,能够灵活运用,扩展,修改,细化,都需要自己多练。有错误是正常的,需要你自己对错误的认识和摆平,只有这样,也许技术才会有所提高。 $ z) o) _! q( c5 n* W) d
附件: 您需要登录才可以下载或查看附件。没有帐号?注册

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