返回列表 发帖

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

  第六步 查找密码系统1 N# ?6 X$ N5 D! |" `9 s9 }/ q9 P
  1,建立第一个页面 1.asp,其主要作用是让查找密码的朋友输入其用户名,很简单的页面:一个name文本输入框,和一个submit提交按钮。8 n# Q+ @- m( a4 v3 Y+ U
  
* {) O9 a) s: S7 V9 p2 k( L  2,1.asp中选form标记,在相应的属性框中,“动作”填写2.asp,“方法”采用post。$ z6 E$ n0 O( ]3 g6 B8 k; v
  
; k/ k8 W2 z3 i' {' t  3,保存1.asp,在站点里面新建2.asp,并打开它。5 F1 `+ ^1 w/ w8 U& B" ~: Z
  该页的作用有两个:
- W2 o; v0 C! n# _  N0 d# U( p  1,判断上一页,即1.asp所填写名字在数据库中是否存在。
- X6 e# z& r7 h8 q  2,不存在应提示出错,存在则应将该用户的问题(question)字段内容显示。! m4 i# I1 ]: |, D+ j7 v: W4 W
  具体怎么实现呢?
/ f; \% L, \. o1 O" W6 |4 w  V, e, A  4,2.asp上数据库已经连好。老方法,先绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。在弹出的“记录集”中就要好好设置了。最主要的就是“筛选”,选择"name" "=" "表单变量" "name"。
0 j* M9 a; t# e9 I: F4 V2 ]) G  意思是,要显示数据库表中字段name的内容,得有个条件,那就是:从上一页(1.asp)中书写的name表单内容要和库中的字段name值相等。8 L; _( f. W- U7 `
  
  v7 ^" L6 h( r( g1 P& i' B" T  5,其实切换到“高级”就可以看到自动生成的SQL代码,其中就有requeset.form("name"),意思就是把1.asp文本框中输入的值接受过来。
, a2 c5 _& X1 ^- G  + X( `0 W* {9 F3 ?4 ^- Z9 _
  6,在2.asp页面敲入不存在该用户的提示语言"嘿嘿,这个用户还没有注册,所以你就没必要找密码了。"' f: z# v1 b7 P1 ]
  换行再敲入存在该用户的语句。但与此同时还要注意把密码问题SHOW出来,以及问题的答案做成文本框。- {4 z+ l( ^6 ?% l8 H2 _
  2 Q. U3 Z$ K: m% U2 I
  7,选中2.asp的form标签,属性面板中动作填写3.asp,方法采用post。3.asp主要就是用来判断问题和答案是否吻合,如吻合则显示正确密码了。注意!是问题和答案在一起。而我们当前只有答案可以传过去,那我们的问题该怎么传到3.asp呢?
% O4 T8 G5 y7 l1 Y" J+ F! H2 |  5 \+ O9 z8 ]" z: y9 b
  8,在“你的密码问题是:”后面插入光标,然后从“绑定”的“记录集”中选择“question”插入或者直接拖入到页面。注意!这还只是显示给用户密码问题,是不能将此信息传过去的。那怎么样才可以呢?
: `1 D8 c$ d9 q! `  5 k; ~# f! Z% s9 B; }  `+ M2 W
  9,我们采用“隐藏域”来传送question的值。插入一“隐藏域”(PS:有人不会插入吗?呵呵),对“隐藏域”的属性进行修改:“隐藏区域”名称就叫"question"吧,“值”点击后面的闪电图标,弹出对话框中选择“question”。已经完成对“隐藏域”question的赋值,同样也可以进行传递。; w. @1 `4 A& W" B$ B) Q2 F
 2 }+ G# V6 v' k% t( |& o  p& v
  10,剩下的就是把2.asp中的两部分严格分开了。+ [. L+ }3 w+ d* b, k7 L( ?& Q
  选中“嘿嘿,这个用户还没有注册,所以你就没必要找密码了。”这段文本。, \7 B- [( Q  N5 }* L2 v
  “应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。
( T% g5 E0 }2 V' d2 I5 H6 ?  弹出对话框中选择刚刚建立的recordset1即可。9 a9 P- T7 ~; k- r/ y1 G
  意思很明显:如果没有找到满足SQL语言查询的记录集就显示该行错误提示。
: y" I% k" p- q3 q! d& Y) R2 N* c  % v$ [8 G6 H, G; ~6 s* @7 H) D& x
  11,同样,选择form表单,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。
$ f: u9 Z3 u$ p& Y  弹出对话框中选择刚刚建立的recordset1即可。
: ^  C/ E# @0 K* e) V1 L' H  意思也很清楚:如果有满足SQL语言查询的记录集就显示问题和答案书写框。5 @% O8 ^/ `6 r
  最终效果页应该如下:
8 X. R. y$ Y: ?6 ?9 e7 q, x# ?# }  
) L! y% y+ I; p. F  总算把2.asp搞定了。总结下,该页主要起承上启下的作用。先要判断有没有这个用户,如果有,还有把密码问题显示出来,并要能传送到下一页3.asp
# d! j9 o7 i$ v. v! z3 ^; i4 U' @: Z  12,那3.asp就要判断2.asp过来的密码问题以及答案是否和数据库中的吻合了。2 F1 t# c1 i- n; y
  又有两个作用:不吻合,说明密码答案错,返回上页再来!吻合,那就规规矩矩地给人家密码吧,呵呵。5 r: [" C8 |1 a8 w6 x) u
  不过有了做2.asp的经验,做3.asp还不是小菜一碟!
- w5 n6 t8 l2 y# u6 f( C  13,保存2.asp,在站点新建3.asp并且打开它。老规矩,绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。
) N. n/ P0 ~1 R* x# z' |7 A  在弹出的“记录集”中就要值得你要小心注意了。/ s; K# e1 f( m( F1 v4 O4 P
  “筛选”,选择"question" "=" "表单变量" "question", ?( i3 d4 j4 ^! m! p; S
  
* i; ~% a- e0 t2 m$ z. F  14,但你有没有注意到,我们要传送两个值给3.asp接受的,但现在只能一个进行选择。那该怎么办呢?切换到“高级”SQL的相关代码。我们要稍加添加。
) h  w2 }0 h; J( V: m2 A) Z+ f: i' S  SQL结构查询语言会一点,模仿能力强一点,呵呵就过来了!
* O' X1 Z0 \- v7 B6 v  “变量”添加一个“MMAnswer”,“运行值”当然就是“request.form("answer")”了4 B. Q0 u  B6 w' G
  然后把SQL语言加一下and answer = 'MMAnswer'
# S/ I" E+ m0 U" y  看SQL的意思就明白了:必须要求 question and answer和数据库表中两字段的值吻合。9 {! B! @: v7 Y2 C' \
  3 v! y5 x% F% |/ M
  15,接着,象做2.asp样快速设计3.asp2 g% T- R+ L% a- {+ v
  页面上书写不吻合的语句“呵呵,你的问题答案不是这个吧,要不回去再试试? ”并且选中后,同样是“应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。  k* @" y2 l. n1 {2 H& V
  接着是吻合的情况,“你的密码是:”的后面,从“绑定”“记录集”中选择“pwd”插入或者直接拖入到页面;% S9 ]* `! t% d& F, h
  并且还要选中该部分,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。' o( c6 f- }  J" a. z
  - x8 {, X4 e9 I$ Q
  16,保存3.asp,大功告成!来调试下。
  F' E4 b, ^! p0 ?- D! {/ Y$ d  3 ?2 N: l- l! f. V* W
  
/ E+ U, t% N) g' e1 Q, A第七步:修改资料篇
0 s4 K4 Y& Z' [  r# Q2 ]  修改资料!首先要清醒一点,什么人才可以修改。; K) N( D+ c1 P5 M# k
  一,本人只能修改自己的;二,管理员可以修改所有人的。( S$ q3 Z" }+ o/ H3 t
  那今天先来搞个可以修改自己资料的页面。# a  m( _" C4 X
  顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。
/ ^- [& R" n- [/ M7 O' g  @  还记得---菜鸟也学DW做ASP。(登录系统篇)
# }! s, F9 |# s' n4 }6 P  这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。( n6 y; m& A/ C! T% @
  好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。+ J$ B, a% ]* h. r
  这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。$ ]1 c, W9 Z2 ]* I) I7 w4 ~
  那接着就是显示记录,来!动手了!
( Y; X/ b. s# }! w& I3 a  1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。' S$ `# t0 {# r
  修改资料篇+ E) Y" f; d# b5 ]1 c
  今天是学习怎么做修改资料的ASP页面0 |3 ]& N3 B8 ]
  修改资料!首先要清醒一点,什么人才可以修改。) C* k9 |& U( e- a! g+ i
  一,本人只能修改自己的;二,管理员可以修改所有人的。& y# J# S7 B8 q( K4 _" `: T5 N4 [
  那今天先来搞个可以修改自己资料的页面。3 F$ J% F/ Y6 d- \$ y
  顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。5 Y9 W* c& y; ~
  还记得---菜鸟也学DW做ASP。(登录系统篇)- U0 O( j5 I! h/ j
  这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。
+ G1 t" x# J" @, H& x9 t  好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。& Z( f0 p  d6 ^0 t' m
  这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。
: t  ?' p) S: Y5 \- V& d8 l3 i: [  那接着就是显示记录,来!动手了!
3 u9 ?* w7 x+ J; W; B  1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。
! s( R6 B; l0 _  I# M  
+ M7 S: U* R$ x7 y  2,弹出的对话框中,好好设置下!主要是筛选那块:"name""=""阶段变量""MM_username"。
# J" e5 G$ ^! n: M9 ^  
$ u$ b/ q# q- [0 j3 I  3,切换到“高级...”其实就是生成了SQL:SELECT * FROM user WHERE name='MMColParam' ,并且MMColParam是一变量,运行的时候被赋上Session("MM_username")值。
3 Y4 P% F  J+ h8 V( e1 s/ R0 _& Q% m  很好理解,loginok.asp所绑定以及要显示的记录,有一条件:就是按WHERE后面的去找。4 o& k9 L) @1 ^
  不愁找不到!因为只有当Session("MM_username")不存在才找不到。
, _" H0 B7 A% N- {+ F5 G  而如果Session("MM_username")不存在那说明这家伙根本还没有正确登录。
* Y7 \& z6 j0 v; k. v! {6 c3 c1 l  呵呵,有点像鸡和鸡蛋的问题。
  W0 j& M% e& L  : {+ u: O3 p6 F) \' Z
  4,其实,这个时候你只要选择“应用程序”--“更新记录表单”就可以做我们的修改了。
7 r/ c4 r0 x5 [7 k- r  但个人感受,先不去用这个,采用其它的办法同样可以,并且还能学到更多的知识。何乐而不为?
. A: y# l* Z9 L  C  ( m  p$ O- v5 y# _& u1 {
  5,下面,那就跟我来。再让你学一手主详细页面的制作。
% ^( j+ K6 |) c2 Z8 Q  有关主详细页,顾名思义。先来个笼统的显示(主要的),对哪个感兴趣,常会来个“详情请进”。' |/ z6 r* \  W7 z+ s4 F- x4 a; Y+ B! I
  当然在这个页子里面是没有多大用处的,因为主来详去就你一个用户信息。
; @) C7 K8 l* ]/ h+ c! p2 i* A, W0 D  但如果是管理员的页面呢?对这个用户具体查看一下就要用到了。
' G$ ]- r, @1 j" f  
+ e" X* ^; a% O/ o8 w8 y  6,在弹出的对话框中,"记录集"Recordset1无需理会,"主页字段"意思就是在主页面上要显示的字段信息。& B. e1 {7 v; Y& n. L
  因为是主,其他不要显示的字段就一个个按“—”删除吧,主得只剩下大名name。: H' X) p2 C9 ]7 \4 @6 J8 k: @
  那下面的连接到详细信息就只有选择“name”了。$ [0 i# r$ G6 s# ?& r
  “传递唯一键”就选自动编号ID吧,当然其他的也可以选,但一定要确认你所选的在数据库表中一定要有内容。比如一些人注册的时候QQ号码不一定写,那这时候你就不能选oicq做为“传递唯一键”
: ]% u3 [7 _# o  p- ]/ G  (所谓“传递唯一键”,就是asp中传递URL参数值。君不见xxx网址是http://www.cnbruce.com/blog/showlog.asp?cat_id=27&;log_id=219,那“?”后面的是什么玩意,cat_id就是参数,27就是值,当然后面不光只要一个参数,多个参数就用&连起来。当然这些东西,学asp的都知道了。DW做,呵呵,不要理解这么多,但你一定要学。)  o  D. B9 J  t3 Y3 b0 l
  然后是"详细页名称",因为还没有做,当然推荐你先不做,为什么?自有玄机!
3 L! x" B. F/ K  b  就先命名个“xiangxi.asp”吧。
! N9 ^2 Y! R+ f* F/ K2 z  “详细页字段”就不改吧。好!确定。4 B' t: I* s; r. X
  % p/ }' `3 z+ C: y/ _
  7,确定后,一段时间的等待,突然发现,DW自动生成了xingxi.asp(刚才玄机所在)。不光页面内容生成,连“记录集”也绑定好了,动态文本也添加了。(真是服务周到)
/ z6 P! ?5 i5 n4 m$ l
  
* i; X% k: o) ]; D/ L: p  8,再看看loginok.asp。有不少东西,看得眼睛发呆,这些大都是和xiangxi.asp进行挂钩连接用的,不是垃圾,甭怕,呵呵。
+ h$ `3 y2 P7 b" n  # {# a# a6 n- B# E3 ^1 |2 `' T
  9,然后做什么事呢?回到xiangxi.asp吧。我们要修改资料,那得有些文本的框框让我填写啊。那这时候就有个死办法,先选中整个表瘢琧trl+x把表格给剪了。立马回到表单工具部分,插入表单,在出来的虚线框中ctrl+v粘贴过来。
0 Q3 Z% {) W! `, ^* }  : X2 s: ~, h! T" n
  10,接下来,添加文本框。先把{Recordset1.xxx}一个一个删掉,只留下一个ID和name因为这两个不需要修改,也不能修改!
; S; c/ V6 [% p# ]  \8 @2 w) S$ `  其余的,换成对应的文本框,注意“文本域”打上对应的名字。- B2 A, V+ g; y( z
  在对表格加一行,添加两个按钮。
0 `# J' }, O9 k% v5 m3 }" z  
- h0 w# u$ M8 Y8 ^3 A; ]8 v4 H  11,再想想,那些文本框里面是不是空的,正常修改资料的时候还会显示到原有的信息的。所以,选中表单。“应用程序”“绑定”“记录集”中相应的字段。7 ]7 T5 a5 V" D% K/ h
  
6 F: M( I/ g) O! ?9 K' I4 v  h  或者,采用文本框的属性里面设置初始值,点动态闪电图标,弹出对话框中选择对应字段。
0 t* g, [9 ]' c4 s  
% h' h& {" ]* V1 v  12,好了以后,选中form表单。。“应用程序”--“服务器行为”--“+”--“更新记录”" s1 Z3 P6 C8 [0 x2 f, S3 `) @
  + [6 }5 q; U8 K" ]8 }
  13,弹出窗口中,一般默认。“在更新后,转到:”老规矩先写个xiugaiok.html,以后再来建。
1 E$ S7 [' c' [: ?: Z* m  $ n- @2 F  ?3 v  B5 j" S
  14,当然,该页还没有结束,要添加“服务器行为”--“用户身份验证”--“限制对页的访问”,主要还是起保护作用,不能随便就能进入的。
$ S, N# Z2 A0 ]) D  最后在把xiugaiok.html做下了,大体内容:修改成功!返回loginok.asp。
; U7 u2 \* y$ |4 X* y: `  基本完成,可以调试了。先从loginok.asp开始。因为是第一次打开窗口,根本没有登录,所以loginok.asp回自动转向到loginbad.html
$ s& g) e) ^$ }" g8 x9 T  
0 k; H# Y# h0 z3 Y  返回到login.asp,一路填下去6 i3 i" ?' Y# g# Z; }
  - {9 i2 I5 F+ E2 L
  ! }6 C3 u' M7 S) c  h% U9 X
  点击“cnbruce”修改密码“789”确定!" }3 _( K0 h  W3 y2 b
  * J+ C' Q) p* u* ~" h# G
  然后,你再返回到 login.asp看看更改密码是不是生效了!
6 }2 l4 k) `- [/ q5 P  最后:整个的修改页是越来越复杂了,我采用步骤比较多的方法,当然也附带学到了主详细页的用处。最主要是本人认为这样对初学者才有挑战性,能够灵活运用,扩展,修改,细化,都需要自己多练。有错误是正常的,需要你自己对错误的认识和摆平,只有这样,也许技术才会有所提高。 / a4 N9 U& \. X+ K* w+ u9 W1 ?9 n5 n
附件: 您需要登录才可以下载或查看附件。没有帐号?注册

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