|
  
- UID
- 1
- 帖子
- 738
- 精华
- 28
- 积分
- 14389
- 金币
- 2480
- 威望
- 1647
- 贡献
- 1428
|
用Dreamweaver制作ASP动态网页(图解五)
第六步 查找密码系统& `. T8 a6 D# ~+ P2 J
1,建立第一个页面 1.asp,其主要作用是让查找密码的朋友输入其用户名,很简单的页面:一个name文本输入框,和一个submit提交按钮。+ h0 k+ b9 k8 d9 ]$ O1 q0 S' \
! f3 H+ l9 Q* t: U 2,1.asp中选form标记,在相应的属性框中,“动作”填写2.asp,“方法”采用post。
' ]8 D) P8 |; |, Y - e9 i4 J& u" ]' k/ l$ R7 M
3,保存1.asp,在站点里面新建2.asp,并打开它。
9 T/ _: v; {* R$ J! e! @ 该页的作用有两个:
/ I% ], z# h7 ?7 ?- P& q2 r 1,判断上一页,即1.asp所填写名字在数据库中是否存在。2 H( G6 U9 h& Z
2,不存在应提示出错,存在则应将该用户的问题(question)字段内容显示。* y: }* D& V) s7 d
具体怎么实现呢?
; [/ r9 E* o7 l 4,2.asp上数据库已经连好。老方法,先绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。在弹出的“记录集”中就要好好设置了。最主要的就是“筛选”,选择"name" "=" "表单变量" "name"。+ [2 a4 @% v% k6 u4 j
意思是,要显示数据库表中字段name的内容,得有个条件,那就是:从上一页(1.asp)中书写的name表单内容要和库中的字段name值相等。4 x8 J. Y+ }% Q% f2 z
: [$ T' f$ i/ g8 z& x 5,其实切换到“高级”就可以看到自动生成的SQL代码,其中就有requeset.form("name"),意思就是把1.asp文本框中输入的值接受过来。) P# W2 w$ B$ q5 V+ [
; D) d! r$ M+ A5 ^0 f6 l4 ?" B# ?
6,在2.asp页面敲入不存在该用户的提示语言"嘿嘿,这个用户还没有注册,所以你就没必要找密码了。"
# A. Z/ S; w$ {8 R) V$ W, k 换行再敲入存在该用户的语句。但与此同时还要注意把密码问题SHOW出来,以及问题的答案做成文本框。
i7 L0 T# ]# v, ]/ k
6 x# ~2 E5 [/ p2 k' [% X 7,选中2.asp的form标签,属性面板中动作填写3.asp,方法采用post。3.asp主要就是用来判断问题和答案是否吻合,如吻合则显示正确密码了。注意!是问题和答案在一起。而我们当前只有答案可以传过去,那我们的问题该怎么传到3.asp呢? Z$ H1 c# C: N+ q3 e' ]! ^) R
1 M+ m) r# |1 |9 ^; W9 x 8,在“你的密码问题是:”后面插入光标,然后从“绑定”的“记录集”中选择“question”插入或者直接拖入到页面。注意!这还只是显示给用户密码问题,是不能将此信息传过去的。那怎么样才可以呢?
& I' s9 v/ n- ?! Z$ j/ { 3 \( a: ~4 [2 ]/ D! r" x
9,我们采用“隐藏域”来传送question的值。插入一“隐藏域”(PS:有人不会插入吗?呵呵),对“隐藏域”的属性进行修改:“隐藏区域”名称就叫"question"吧,“值”点击后面的闪电图标,弹出对话框中选择“question”。已经完成对“隐藏域”question的赋值,同样也可以进行传递。
# V8 i: o- l1 {' ]: X# m- Z! M1 `' |
# e+ s' _- ^. j; p7 b Q 10,剩下的就是把2.asp中的两部分严格分开了。
; U# Y% Y) M5 \4 x* q 选中“嘿嘿,这个用户还没有注册,所以你就没必要找密码了。”这段文本。5 ~& q: }2 k4 x* l
“应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。) x+ w( w" |+ @
弹出对话框中选择刚刚建立的recordset1即可。
6 u/ n" a. ~; K2 K# y 意思很明显:如果没有找到满足SQL语言查询的记录集就显示该行错误提示。, _# H& [$ E& B
, l" k) G% t) n9 B7 r2 `4 z
11,同样,选择form表单,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。. f2 X k" h8 d) A2 H' O
弹出对话框中选择刚刚建立的recordset1即可。9 R' e, p/ ]+ o, R' J
意思也很清楚:如果有满足SQL语言查询的记录集就显示问题和答案书写框。3 z' @+ H& s: i' z
最终效果页应该如下:
+ b" H. J9 |( P
* A3 N) b8 m$ Z/ v8 m 总算把2.asp搞定了。总结下,该页主要起承上启下的作用。先要判断有没有这个用户,如果有,还有把密码问题显示出来,并要能传送到下一页3.asp/ k+ ^; @, J7 X
12,那3.asp就要判断2.asp过来的密码问题以及答案是否和数据库中的吻合了。' x, N* m1 H, [
又有两个作用:不吻合,说明密码答案错,返回上页再来!吻合,那就规规矩矩地给人家密码吧,呵呵。: S; u) N1 \7 G3 S$ \
不过有了做2.asp的经验,做3.asp还不是小菜一碟!/ z. r3 t3 e1 x, T
13,保存2.asp,在站点新建3.asp并且打开它。老规矩,绑定记录集(“应用程序”面板--“绑定”标签下“+”“记录集(查询)”)。9 {, a* w: t5 x5 Q9 i0 L
在弹出的“记录集”中就要值得你要小心注意了。6 |! g- y( V; x8 n) j* t/ M
“筛选”,选择"question" "=" "表单变量" "question"
/ v1 r4 k6 R0 ]! i Q
0 a3 p& z9 ~4 N6 O9 }' } 14,但你有没有注意到,我们要传送两个值给3.asp接受的,但现在只能一个进行选择。那该怎么办呢?切换到“高级”SQL的相关代码。我们要稍加添加。; X% B) `5 T- b; S) m
SQL结构查询语言会一点,模仿能力强一点,呵呵就过来了!5 j7 |/ q! e# ]" {' V! V! t: m
“变量”添加一个“MMAnswer”,“运行值”当然就是“request.form("answer")”了
7 d5 P, \3 l8 T9 e. u7 Y% x 然后把SQL语言加一下and answer = 'MMAnswer'( Q1 I5 K; ~2 i/ b, G! a4 E
看SQL的意思就明白了:必须要求 question and answer和数据库表中两字段的值吻合。# U) v/ J; c; L u& B4 s
1 J0 J( D: X+ ]2 T- s# B8 e
15,接着,象做2.asp样快速设计3.asp
4 {0 V9 X* r; H3 u/ K7 m% c) W 页面上书写不吻合的语句“呵呵,你的问题答案不是这个吧,要不回去再试试? ”并且选中后,同样是“应用程序”面板“服务器行为”“+”“显示区域”“记录为空则显示区域”。
: _) m* b3 [' {( W5 [; c1 O 接着是吻合的情况,“你的密码是:”的后面,从“绑定”“记录集”中选择“pwd”插入或者直接拖入到页面;
3 G' l; x/ _" y. r. A 并且还要选中该部分,“应用程序”面板“服务器行为”“+”“显示区域”“记录不为空则显示区域”。
5 Q) S5 [& l c% R ! ] i9 E# V( A; `
16,保存3.asp,大功告成!来调试下。. K' P" `% O' v- j# A
- m0 ~3 I0 z; E) k; ]; M3 ~ # Q/ l$ {' Y+ ~8 ]- h" I
第七步:修改资料篇% j+ k2 j2 E1 I3 o" t& M% [) a
修改资料!首先要清醒一点,什么人才可以修改。
( e8 P u/ z5 ^ W 一,本人只能修改自己的;二,管理员可以修改所有人的。
3 w. H8 h5 [- F m 那今天先来搞个可以修改自己资料的页面。
8 I3 w% j- q/ j m8 |( E 顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。) [2 m: k" z" H- H' v* f
还记得---菜鸟也学DW做ASP。(登录系统篇)+ i4 G |) H8 P- U s* r; c. ?# w
这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。7 e4 C1 M2 H3 m5 o7 \
好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。
4 I# G. t* L. a 这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。
/ a' G/ Q4 U2 g: ^ G o 那接着就是显示记录,来!动手了!
% a; N& M7 j" a1 C6 Y' n9 ? h$ o 1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。( d% E$ D% Z% D. `: P+ q
修改资料篇0 W. v0 K0 ]4 ?
今天是学习怎么做修改资料的ASP页面" |6 x# K" K+ K: y; f
修改资料!首先要清醒一点,什么人才可以修改。
: v A# b: x. K8 I% b! u0 m) a# p 一,本人只能修改自己的;二,管理员可以修改所有人的。
0 p O5 r4 |# h2 X/ ]3 D4 }0 ? 那今天先来搞个可以修改自己资料的页面。
0 W8 k4 t2 L8 i& E- p0 I& L 顺序是:先确认是正确登录,然后才是自己的资料出现,再接着你才可以修改,对吧。
4 J& G+ P8 K( C; K/ i, O& r 还记得---菜鸟也学DW做ASP。(登录系统篇)- f9 s- ]( A i$ v @% D' J" @
这里面的loginok.asp页面还在的吧。不在也不要紧。再做一遍,当作练习的。, c1 k' G5 i8 j3 |7 P6 }
好了吧。loginok.asp主要是个人信息页面,不同的用户显示不同的信息。
) ?' q P8 D3 m 这个页要注意的:是一保护页面,要添加“限制对页的访问”的;当然相信你已经做了。
% u- |; q- H+ Q! P: | J3 o" y3 Q 那接着就是显示记录,来!动手了!* O2 A3 F8 o; w" x
1,loginok.asp中“应用程序”面板“绑定”标签“+”“记录集”。
4 t S" z3 f1 X4 l& i0 j
% G. Y+ W" o: f* x/ u1 W$ G 2,弹出的对话框中,好好设置下!主要是筛选那块:"name""=""阶段变量""MM_username"。
3 D7 Y, o9 C* T 0 s& P! D+ i# F, y" @
3,切换到“高级...”其实就是生成了SQL:SELECT * FROM user WHERE name='MMColParam' ,并且MMColParam是一变量,运行的时候被赋上Session("MM_username")值。+ G1 K9 z1 n; D
很好理解,loginok.asp所绑定以及要显示的记录,有一条件:就是按WHERE后面的去找。- {+ n( k# C5 q2 ~1 d
不愁找不到!因为只有当Session("MM_username")不存在才找不到。
& |) r7 g) ^! C4 M. } 而如果Session("MM_username")不存在那说明这家伙根本还没有正确登录。
* o& u- ^% j4 K: q 呵呵,有点像鸡和鸡蛋的问题。
/ l# N A/ K1 B
6 a: E% T* p5 H5 W: E9 G0 T 4,其实,这个时候你只要选择“应用程序”--“更新记录表单”就可以做我们的修改了。+ y5 y& }4 Y3 |- S5 f0 n x
但个人感受,先不去用这个,采用其它的办法同样可以,并且还能学到更多的知识。何乐而不为?
+ Z" D& c3 y+ C$ h7 e3 V ) Z( A) G/ U# s+ a" V7 m% |. h1 X
5,下面,那就跟我来。再让你学一手主详细页面的制作。0 n" w, a) @% } a
有关主详细页,顾名思义。先来个笼统的显示(主要的),对哪个感兴趣,常会来个“详情请进”。
- d3 ?: i2 \3 _2 X4 `% E% } 当然在这个页子里面是没有多大用处的,因为主来详去就你一个用户信息。! K3 A7 @# X6 n4 \
但如果是管理员的页面呢?对这个用户具体查看一下就要用到了。& U- F6 A, @. {4 V8 K& s O
! |2 t4 i+ k$ A. n 6,在弹出的对话框中,"记录集"Recordset1无需理会,"主页字段"意思就是在主页面上要显示的字段信息。4 h! @- v$ W$ s6 N, H
因为是主,其他不要显示的字段就一个个按“—”删除吧,主得只剩下大名name。
6 M; V4 R) v2 C! E0 Z; L/ z, s 那下面的连接到详细信息就只有选择“name”了。5 A& ` B9 o, C3 T8 v8 q- Y
“传递唯一键”就选自动编号ID吧,当然其他的也可以选,但一定要确认你所选的在数据库表中一定要有内容。比如一些人注册的时候QQ号码不一定写,那这时候你就不能选oicq做为“传递唯一键”
2 K- t( S: a7 B: P: B (所谓“传递唯一键”,就是asp中传递URL参数值。君不见xxx网址是http://www.cnbruce.com/blog/showlog.asp?cat_id=27&;log_id=219,那“?”后面的是什么玩意,cat_id就是参数,27就是值,当然后面不光只要一个参数,多个参数就用&连起来。当然这些东西,学asp的都知道了。DW做,呵呵,不要理解这么多,但你一定要学。)! Q* I: v: W/ ?! p$ K
然后是"详细页名称",因为还没有做,当然推荐你先不做,为什么?自有玄机!# c6 `" `4 |7 Z8 x% q
就先命名个“xiangxi.asp”吧。
& R* _8 g& S+ o4 y “详细页字段”就不改吧。好!确定。
0 v& i1 U u# T9 y ( ^; R: M4 s2 L" {+ h3 q$ k8 @
7,确定后,一段时间的等待,突然发现,DW自动生成了xingxi.asp(刚才玄机所在)。不光页面内容生成,连“记录集”也绑定好了,动态文本也添加了。(真是服务周到)3 [: P8 z+ G9 W7 z& }$ Q# t
) T. U4 b9 Q9 F1 F 8,再看看loginok.asp。有不少东西,看得眼睛发呆,这些大都是和xiangxi.asp进行挂钩连接用的,不是垃圾,甭怕,呵呵。
" J# x* J1 |; y8 Q% N& P( _ 0 F$ t' J# }" d1 P5 j9 D
9,然后做什么事呢?回到xiangxi.asp吧。我们要修改资料,那得有些文本的框框让我填写啊。那这时候就有个死办法,先选中整个表瘢琧trl+x把表格给剪了。立马回到表单工具部分,插入表单,在出来的虚线框中ctrl+v粘贴过来。
7 S/ T- n) E1 ?0 h0 j: X, V& O$ X
- z1 q/ M6 }+ O, T 10,接下来,添加文本框。先把{Recordset1.xxx}一个一个删掉,只留下一个ID和name因为这两个不需要修改,也不能修改!
! }: F0 V' T. W) m8 x6 E8 V 其余的,换成对应的文本框,注意“文本域”打上对应的名字。& h+ f6 K1 E. T! q# A. |# a' c
在对表格加一行,添加两个按钮。9 W; j" P. ^8 `9 |, x/ Z, N9 q: D
# p. Z1 }/ @5 s1 o; e t2 m; d% j 11,再想想,那些文本框里面是不是空的,正常修改资料的时候还会显示到原有的信息的。所以,选中表单。“应用程序”“绑定”“记录集”中相应的字段。5 j3 D; A( g6 s6 Z6 }6 {; X; p
$ C# k/ e4 W% H& g' ]& O
或者,采用文本框的属性里面设置初始值,点动态闪电图标,弹出对话框中选择对应字段。) W; [1 P; E8 B3 h1 M; h A
5 ]- c3 d8 J9 A4 \
12,好了以后,选中form表单。。“应用程序”--“服务器行为”--“+”--“更新记录”$ M' s# |! W- ?; N! t4 _' j U
1 c. u) h7 k4 ]* c' y: r. ~
13,弹出窗口中,一般默认。“在更新后,转到:”老规矩先写个xiugaiok.html,以后再来建。& k* d) ?# H* p" L1 N
. u( I3 D" w* s M0 e, i) J1 d- w 14,当然,该页还没有结束,要添加“服务器行为”--“用户身份验证”--“限制对页的访问”,主要还是起保护作用,不能随便就能进入的。* V+ f! t) h/ S- _$ t( }
最后在把xiugaiok.html做下了,大体内容:修改成功!返回loginok.asp。% m$ W1 f6 R+ U
基本完成,可以调试了。先从loginok.asp开始。因为是第一次打开窗口,根本没有登录,所以loginok.asp回自动转向到loginbad.html
7 Z# G$ v T2 U; i6 W+ z3 G" h& A " e8 Y* d4 ?( O+ y; X! g( Y
返回到login.asp,一路填下去! y, A0 F+ U& _" ?2 z/ t
1 [. t$ Q3 Q6 e' T! L1 C5 h 6 f1 T- K9 P8 w0 ]
点击“cnbruce”修改密码“789”确定!( P: c) n; J) E; w6 B
4 Z ?5 j/ L0 _! e4 b4 R 然后,你再返回到 login.asp看看更改密码是不是生效了!
& s) t- _6 g6 I4 G* B, r 最后:整个的修改页是越来越复杂了,我采用步骤比较多的方法,当然也附带学到了主详细页的用处。最主要是本人认为这样对初学者才有挑战性,能够灵活运用,扩展,修改,细化,都需要自己多练。有错误是正常的,需要你自己对错误的认识和摆平,只有这样,也许技术才会有所提高。
" H& i7 S: [7 K+ p |
附件: 您需要登录才可以下载或查看附件。没有帐号?注册
|