返回列表 发帖

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

  第六步 查找密码系统* n. L2 o- q0 `8 E! A& D
  1,建立第一个页面 1.asp,其主要作用是让查找密码的朋友输入其用户名,很简单的页面:一个name文本输入框,和一个submit提交按钮。
- v1 a% I* @5 H/ N) i) e  
3 Q/ X& O+ r$ v  2,1.asp中选form标记,在相应的属性框中,“动作”填写2.asp,“方法”采用post。  |' r3 }9 I: I+ s
  3 J' C, a# I( q0 r. U9 G4 Q9 W
  3,保存1.asp,在站点里面新建2.asp,并打开它。
* r! g1 ?2 @4 R$ E0 Z' l% O  该页的作用有两个:
( ]! {1 z7 g7 [: S  1,判断上一页,即1.asp所填写名字在数据库中是否存在。
) h! u) G3 l2 [; q4 t' Z. x5 L  2,不存在应提示出错,存在则应将该用户的问题(question)字段内容显示。+ o1 {/ O: o" J, u: [+ ~; [
  具体怎么实现呢?
- a3 D- S) Y/ ]! ?. m. c1 B. j, P, |  4,2.asp上数据库已经连好。老方法,先绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。在弹出的“记录集”中就要好好设置了。最主要的就是“筛选”,选择"name" "=" "表单变量" "name"。
* ]$ m8 D. ~+ B. F4 C  意思是,要显示数据库表中字段name的内容,得有个条件,那就是:从上一页(1.asp)中书写的name表单内容要和库中的字段name值相等。
' _" ]% H4 U) Z& a  T! H& m) s  
' w6 r" O  o" `8 X# q# Q9 D  5,其实切换到“高级”就可以看到自动生成的SQL代码,其中就有requeset.form("name"),意思就是把1.asp文本框中输入的值接受过来。3 H& W: w  w" e( b- d' }
  
& i3 Z' G: i+ W, E$ O8 i  6,在2.asp页面敲入不存在该用户的提示语言"嘿嘿,这个用户还没有注册,所以你就没必要找密码了。"# p6 |( N/ k- C( ]7 Q, V* ]
  换行再敲入存在该用户的语句。但与此同时还要注意把密码问题SHOW出来,以及问题的答案做成文本框。
( o) P: O: q" k1 |# d  
6 f& s1 N, A* w* H) [5 C( S  7,选中2.asp的form标签,属性面板中动作填写3.asp,方法采用post。3.asp主要就是用来判断问题和答案是否吻合,如吻合则显示正确密码了。注意!是问题和答案在一起。而我们当前只有答案可以传过去,那我们的问题该怎么传到3.asp呢?
2 a( i8 b2 p1 H. _! `  * d0 |1 j. c8 N6 y# Y$ I9 N$ [
  8,在“你的密码问题是:”后面插入光标,然后从“绑定”的“记录集”中选择“question”插入或者直接拖入到页面。注意!这还只是显示给用户密码问题,是不能将此信息传过去的。那怎么样才可以呢?
' U( u6 j/ s5 G5 O7 m# p. k5 Y! X  6 d$ {& {% ~* \0 e, Y2 j' N% D
  9,我们采用“隐藏域”来传送question的值。插入一“隐藏域”(PS:有人不会插入吗?呵呵),对“隐藏域”的属性进行修改:“隐藏区域”名称就叫"question"吧,“值”点击后面的闪电图标,弹出对话框中选择“question”。已经完成对“隐藏域”question的赋值,同样也可以进行传递。
4 q+ E' A4 ^; [' o- X + r4 H6 V+ V$ y6 W
  10,剩下的就是把2.asp中的两部分严格分开了。
' O: A  _( E. o6 v  @5 J! s  选中“嘿嘿,这个用户还没有注册,所以你就没必要找密码了。”这段文本。
: t# L& H" w/ _. o1 \9 o  “应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。
4 z1 Y) z5 f0 D2 N' L2 b  弹出对话框中选择刚刚建立的recordset1即可。
8 Y7 t4 I% A2 x6 o* H0 j  意思很明显:如果没有找到满足SQL语言查询的记录集就显示该行错误提示。
3 f. m% D4 ^" n3 B+ N+ ?  # A1 N0 M; r0 K5 T- T/ j' {
  11,同样,选择form表单,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。
- T" z- ^6 J9 Z; J5 Q  弹出对话框中选择刚刚建立的recordset1即可。
; z: v' U9 R( ~2 e. g- S, [  意思也很清楚:如果有满足SQL语言查询的记录集就显示问题和答案书写框。$ p8 ?1 s; g% {7 U2 `2 Q
  最终效果页应该如下:
& P, f; H( O2 N# w/ Z  : i( }0 w* R2 l- j4 z% f
  总算把2.asp搞定了。总结下,该页主要起承上启下的作用。先要判断有没有这个用户,如果有,还有把密码问题显示出来,并要能传送到下一页3.asp
# i% n2 M. w& m- }  12,那3.asp就要判断2.asp过来的密码问题以及答案是否和数据库中的吻合了。
6 }( D1 s$ m; \6 M1 n: l  又有两个作用:不吻合,说明密码答案错,返回上页再来!吻合,那就规规矩矩地给人家密码吧,呵呵。
0 ?8 ^1 s% ^. s; E2 |& A5 m  不过有了做2.asp的经验,做3.asp还不是小菜一碟!
' ~; k; l' z- N/ J  13,保存2.asp,在站点新建3.asp并且打开它。老规矩,绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。
$ \3 R+ \2 |) P( z. O* a  在弹出的“记录集”中就要值得你要小心注意了。' N6 O/ c' }5 i
  “筛选”,选择"question" "=" "表单变量" "question"% l2 j# b+ D5 h1 M1 c
  9 _1 t) e5 Y6 D, R# ]8 B
  14,但你有没有注意到,我们要传送两个值给3.asp接受的,但现在只能一个进行选择。那该怎么办呢?切换到“高级”SQL的相关代码。我们要稍加添加。3 b8 }! z# m. P
  SQL结构查询语言会一点,模仿能力强一点,呵呵就过来了!
7 n# J( F. l1 w5 q: r7 s  “变量”添加一个“MMAnswer”,“运行值”当然就是“request.form("answer")”了
4 q% E, G' w; w5 x% l  然后把SQL语言加一下and answer = 'MMAnswer'/ D+ [. C) h* [9 o4 k* E) |* w
  看SQL的意思就明白了:必须要求 question and answer和数据库表中两字段的值吻合。
, Q3 C2 r: {6 m% E  7 T' t* Z3 i$ S- o; q
  15,接着,象做2.asp样快速设计3.asp
4 I5 f+ ?' r1 G; k+ n  页面上书写不吻合的语句“呵呵,你的问题答案不是这个吧,要不回去再试试? ”并且选中后,同样是“应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。6 K& s  u2 A8 J5 E" Z5 [# D- t: g% O
  接着是吻合的情况,“你的密码是:”的后面,从“绑定”“记录集”中选择“pwd”插入或者直接拖入到页面;
3 G; L. Y1 h# t$ M" H5 l  并且还要选中该部分,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。
7 c0 a: v) }1 G5 h" a& `. q' {  
6 C, [$ S* _3 `+ _# r  16,保存3.asp,大功告成!来调试下。+ P# W/ R3 j6 z3 C
  8 Z7 T8 M. C, c4 Y7 k3 z; ]
  
' t# f! J, g9 F2 v* c" T第七步:修改资料篇
& |$ m9 M/ T! K% X3 P% _3 z! {1 o  修改资料!首先要清醒一点,什么人才可以修改。5 {& g. d, F+ a+ w- _# L3 E
  一,本人只能修改自己的;二,管理员可以修改所有人的。4 n5 S3 h: k4 E& d4 p! `
  那今天先来搞个可以修改自己资料的页面。
7 p* ^$ x' v; E( W, h7 G  顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。( H7 K1 C* n  v
  还记得---菜鸟也学DW做ASP。(登录系统篇)
: B+ v1 }+ A/ n. {8 R1 m7 A2 V  这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。
$ d* x( {) t2 g5 {* `7 G  好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。, J  B- T' i8 B
  这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。
8 B5 A3 A4 }7 P8 F, x' Q& a& G  那接着就是显示记录,来!动手了!( l# _4 J( p9 i4 X8 k+ K% i
  1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。/ F* S9 R9 W& p  \& j" Y6 j2 B
  修改资料篇( Z" J0 @$ r% W6 A" E  ?
  今天是学习怎么做修改资料的ASP页面- _; b7 F7 X7 n% t
  修改资料!首先要清醒一点,什么人才可以修改。
; L% n& m1 X! S; K4 s" W. o) i) ]  一,本人只能修改自己的;二,管理员可以修改所有人的。: Q: b* {8 C3 K8 x' M' K) b: k
  那今天先来搞个可以修改自己资料的页面。
' I7 \( X4 E1 I0 `$ B$ a5 a  顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。
) H7 v" G6 l$ Z: m2 ~  还记得---菜鸟也学DW做ASP。(登录系统篇)
! \7 p* p" z2 _; _/ ?( S  这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。
( X$ Q3 D% x: U8 _7 X- M  好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。. N3 V) H; f3 p
  这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。
+ K" b, G$ |: j4 }* C* b3 e- Z3 t  那接着就是显示记录,来!动手了!* p3 ?& h9 A2 N
  1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。( {. d) o% f, M# t. s& u
  : D( s7 i3 k- v7 l
  2,弹出的对话框中,好好设置下!主要是筛选那块:"name""=""阶段变量""MM_username"。
) Y! C) m  W  @  1 q8 |1 q) U. H2 w* Q" o
  3,切换到“高级...”其实就是生成了SQL:SELECT * FROM user WHERE name='MMColParam' ,并且MMColParam是一变量,运行的时候被赋上Session("MM_username")值。
5 \, F/ i4 L" r( e  很好理解,loginok.asp所绑定以及要显示的记录,有一条件:就是按WHERE后面的去找。
' z- G7 M  m' C9 A  K  不愁找不到!因为只有当Session("MM_username")不存在才找不到。) K8 \) i! A5 ?" i1 b$ E+ x
  而如果Session("MM_username")不存在那说明这家伙根本还没有正确登录。6 d2 Z4 W7 `1 O7 q: f/ Q
  呵呵,有点像鸡和鸡蛋的问题。1 S( g' @, H6 }! o0 {' I4 N
  
; v1 H6 {) ^! C: u7 R7 E2 i3 Z' ]  4,其实,这个时候你只要选择“应用程序”--“更新记录表单”就可以做我们的修改了。
/ v  j, U: Z5 S5 U2 H# `  但个人感受,先不去用这个,采用其它的办法同样可以,并且还能学到更多的知识。何乐而不为?* r1 `2 j" p& E" ?; a2 m" x
  - C% w0 _2 f  ^# k# Z6 @
  5,下面,那就跟我来。再让你学一手主详细页面的制作。" i) C7 _. x3 x$ R  K! k/ O
  有关主详细页,顾名思义。先来个笼统的显示(主要的),对哪个感兴趣,常会来个“详情请进”。
2 s7 Y7 _: s2 [& R* s! X+ ?, |  当然在这个页子里面是没有多大用处的,因为主来详去就你一个用户信息。
3 k5 t3 z. E0 h3 k$ A# @! z& ~  但如果是管理员的页面呢?对这个用户具体查看一下就要用到了。
3 v  I# Y" X9 M/ g3 L! u  
4 s( I& g  O/ U) c8 Y+ _( l9 ]  6,在弹出的对话框中,"记录集"Recordset1无需理会,"主页字段"意思就是在主页面上要显示的字段信息。
3 X2 U5 d" i$ o5 k  因为是主,其他不要显示的字段就一个个按“—”删除吧,主得只剩下大名name。6 q3 W" u, n1 j  _4 q6 b7 ]$ V
  那下面的连接到详细信息就只有选择“name”了。3 `; \1 u, s* Z- l, j) h6 l* k
  “传递唯一键”就选自动编号ID吧,当然其他的也可以选,但一定要确认你所选的在数据库表中一定要有内容。比如一些人注册的时候QQ号码不一定写,那这时候你就不能选oicq做为“传递唯一键”
: p+ _# @) @2 [7 J) r& G  (所谓“传递唯一键”,就是asp中传递URL参数值。君不见xxx网址是http://www.cnbruce.com/blog/showlog.asp?cat_id=27&;log_id=219,那“?”后面的是什么玩意,cat_id就是参数,27就是值,当然后面不光只要一个参数,多个参数就用&连起来。当然这些东西,学asp的都知道了。DW做,呵呵,不要理解这么多,但你一定要学。)( u! u$ M4 t  C9 @
  然后是"详细页名称",因为还没有做,当然推荐你先不做,为什么?自有玄机!
# Y/ N0 P6 J, Q5 k1 F  就先命名个“xiangxi.asp”吧。
2 k0 ^) h. ~: y/ r  “详细页字段”就不改吧。好!确定。
( k; \4 S( s+ D$ o' n  + G, V. c4 b# u$ p/ l- U
  7,确定后,一段时间的等待,突然发现,DW自动生成了xingxi.asp(刚才玄机所在)。不光页面内容生成,连“记录集”也绑定好了,动态文本也添加了。(真是服务周到): S7 D3 v  P7 O7 ^4 d7 q' g( @
  
! u" q) K% y$ K6 i, V$ A  8,再看看loginok.asp。有不少东西,看得眼睛发呆,这些大都是和xiangxi.asp进行挂钩连接用的,不是垃圾,甭怕,呵呵。
( a0 x" V! a/ q9 y! T3 l1 t/ h  
( ?# m7 c! m, E. E" u4 \. L  9,然后做什么事呢?回到xiangxi.asp吧。我们要修改资料,那得有些文本的框框让我填写啊。那这时候就有个死办法,先选中整个表瘢琧trl+x把表格给剪了。立马回到表单工具部分,插入表单,在出来的虚线框中ctrl+v粘贴过来。+ l5 _  q' x! y, z6 k3 V
  
, Y- p/ W" a/ X8 t( G. a  10,接下来,添加文本框。先把{Recordset1.xxx}一个一个删掉,只留下一个ID和name因为这两个不需要修改,也不能修改!. ^9 E( |4 V! ~8 S, j
  其余的,换成对应的文本框,注意“文本域”打上对应的名字。
+ r4 `/ i, {0 s. J- f/ M* E  在对表格加一行,添加两个按钮。
3 f5 P& K& K' Q8 s* V, C  
: j& i/ l7 I) }" q% A  b  11,再想想,那些文本框里面是不是空的,正常修改资料的时候还会显示到原有的信息的。所以,选中表单。“应用程序”“绑定”“记录集”中相应的字段。- q  p& j# m' {$ Y
  
- d* }. g/ u* l1 @$ z  或者,采用文本框的属性里面设置初始值,点动态闪电图标,弹出对话框中选择对应字段。
3 `% O( K! `; U. |  : e! u& x  ~" n5 h
  12,好了以后,选中form表单。。“应用程序”--“服务器行为”--“+”--“更新记录”
8 ?9 q8 F2 I' l$ N( L- M  ^) N  & D. `6 F* O# L# I* \) [
  13,弹出窗口中,一般默认。“在更新后,转到:”老规矩先写个xiugaiok.html,以后再来建。. ?/ {; L, B0 S1 j; ?0 g
  
! K3 m+ ~3 R5 p" s6 t4 D  14,当然,该页还没有结束,要添加“服务器行为”--“用户身份验证”--“限制对页的访问”,主要还是起保护作用,不能随便就能进入的。+ o8 q, s" |1 H- I$ ~
  最后在把xiugaiok.html做下了,大体内容:修改成功!返回loginok.asp。
' @; P3 c; x1 V/ Y  基本完成,可以调试了。先从loginok.asp开始。因为是第一次打开窗口,根本没有登录,所以loginok.asp回自动转向到loginbad.html# A9 y: W! ?. w
  0 ]7 n& w4 G/ @* \) _9 I5 Q4 I  \' C
  返回到login.asp,一路填下去: M5 X: {7 b  T6 d& H
  
  S) _# T$ t  M4 c0 ?  
* a, `' {, n4 C9 a# y1 P) y! m  点击“cnbruce”修改密码“789”确定!
+ l/ n" g3 Q$ x+ Q+ ]' h9 S; o  
3 t; X) S3 q1 q# n& R; h  然后,你再返回到 login.asp看看更改密码是不是生效了!
/ w' c; I6 [' L  最后:整个的修改页是越来越复杂了,我采用步骤比较多的方法,当然也附带学到了主详细页的用处。最主要是本人认为这样对初学者才有挑战性,能够灵活运用,扩展,修改,细化,都需要自己多练。有错误是正常的,需要你自己对错误的认识和摆平,只有这样,也许技术才会有所提高。
. {: p  W. [. |7 z' o
附件: 您需要登录才可以下载或查看附件。没有帐号?注册

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