csdn博客:http://blog.csdn.net/qwentest

用户信息类的构建

上一篇 / 下一篇  2010-01-20 17:10:26 / 个人分类:.net

分析用户信息常有操作:51Testing软件测试网)v;L9^%uFk2C9I7~]S5p

注册信息:51Testing软件测试网3D-X eM:ak(t

用户名--------------------------------------->特殊字符验证,格式化字符串转换51Testing软件测试网x8|nE@#mh~1vk+l

密码------------------------------------------>长度验证51Testing软件测试网%R T(nDy%}

确认密码------------------------------------>长度验证,一致性验证51Testing软件测试网nJQ-P*U9C

E-mail---------------------------------------->匹配验证51Testing软件测试网dM)Tw;US,qsl O

电话------------------------------------------>匹配验证51Testing软件测试网'{o ZA~cmY\k

头像------------------------------------------>格式和大小验证,只存放名称

A m5KLL3O{$c&Q@.U0

数据库操作:insert51Testing软件测试网THLE:z#b2Q5_B@

 

X(L5v N7A~%Uh0

登录

,m7`6[o%mGyU0

用户名----------------------------------------->是否存在验证,存储session

N1UM#x vC(`;\0

密码-------------------------------------------->是否存在验证

_$k\ TEXr0

验证码------------------------------------------>验证码的生产,存储session51Testing软件测试网'p jI N2o?7_

数据库操作:select name,pass

Id0Gg3f~0

个人信息

{4jFVJm0

用户名--------------------------------------->显示51Testing软件测试网n7IL.Y"Z~#m"e^M

E-mail---------------------------------------->显示

(};y zrM s2d2N0Zn\0

电话------------------------------------------->显示51Testing软件测试网`i'n Z7l

头像------------------------------------------->显示51Testing软件测试网F;NA2o[7Q0J

数据库操作:select *

HiP']1O.AX"oSc0

修改个人信息51Testing软件测试网UFI8|b L9kM:K'`2y

用户名--------------------------------------->引用session,不可修改51Testing软件测试网k3z,@$E tt|5s i

E-mail---------------------------------------->匹配验证

LDXC^JN6t0

电话------------------------------------------>匹配验证51Testing软件测试网FY\BM#`

头像------------------------------------------>格式和大小验证51Testing软件测试网no$@l-R)cR3H

数据库操作:update *51Testing软件测试网9|-g}fpO

修改密码

R#o;Hs%SE,V0

旧密码----------------------------------------->是否正确

-j"L@ Tw"Kl?@T0

密码------------------------------------------>长度验证

j%T'I$X+gU0

确认密码------------------------------------>长度验证,一致性验证

kL6\`%jp ~T(p0

数据库操作:1,select ordpass

H*{4a~a-^0

         2,update newpass51Testing软件测试网 vj*HL Hd?c

1,生成用户表

N4TV.n9k.fK0

Create table [dbo].[users]51Testing软件测试网*z!e6z,F'}

( [dbo].[id] int identity(1000,1) not null,

0q yqn{8E0

 [dbo].[name] varchar(20) collate Chinese_PRC_CI_AS null,51Testing软件测试网lbS5@eX

 [dbo].[pass] varchar(20) collate Chinese_PRC_CI_AS null,51Testing软件测试网wlrt{9y-k]

 [dbo].[E_mail] varchar(20) collate Chinese_PRC_CI_AS null,

PU-f'} @*FI]1{.^8c0

 [dbo].[phone] varchar(11) collate Chinese_PRC_CI_AS null,51Testing软件测试网.Z-q#e}2q |z

 [dbo].[Img_per] varchar(20) collate Chinese_PRC_CI_AS null

m E m)C)sq0z\@0

)

'pD$}8n^`E0

Go51Testing软件测试网J%M*k*`/g^%i^

2,创建存储过程,主要是考虑效率问题,主要是程序运行的性能

5y A+a{D0

2.1用于判断用户是否存在

#?+w$QR|b)B0

Create proc check_name

/N$Cx4CrN0

 @name varchar(20)

p p3I5usX0

As

l#KtV.y.Sf9Q0

 Select name form. users where name=@name51Testing软件测试网A|0P,BP0ps8~

go

2U9cf%D7h ]l:l{-x0

2,2用于添加用户信息

B0fz O7WD0

Create proc add_user

5YqL1t#}WQ%]y P0

 @name varchar(20),

+] u6T(g*X7^G4O0

 @pass varchar(20),51Testing软件测试网p7i~9Z~0Q`_

 @E_mail varchar(20),

kb8TE%j$D0

 @phone varchar(11),51Testing软件测试网!AK4z$f t6L^1B:Q

 @Img_per varchar(20)51Testing软件测试网 O%U#{k6}&P

As51Testing软件测试网H$yh7K:d&EPr

 Insert into users (name,pass,E_mail,phone,Img_per) values(@name,@pass,@E_mail,@phone,@Img_per)

R^4x1A'b8C0

Go

pS ~%r&Tr+R o:}G0

2,3用于查找用户名和密码

Pkac/c'Zv0

Create proc search_nameAndpass

5Yxt4P&G+_%B5C0

 @name varchar(20)

Q(DWEC4s(C0

As51Testing软件测试网6w"~3p6u T.r2q-X

 Select name,pass form. users where name=@name(name是输入的)51Testing软件测试网4v k?&m;T#k

Go51Testing软件测试网lS!}'YD

2,4用于显示个人信息51Testing软件测试网9l)S{Y}z4w7_

Create proc show_user

l;U"X/y:W0

 @name varchar(20)

hH BgZX#E0

As

%@xo ~#s:X+a0

 Select name,E_mail,phone,Img_per form. users where name=@name(namesession处获取)51Testing软件测试网Z m(W]vK0s7S\(S

Go51Testing软件测试网b_3A/z,Y

2.5用于修改个人信息51Testing软件测试网.g6c ~ D%fm6| _/}:?

Create proc modify_user51Testing软件测试网m9R!m!E4^"P

 @name varchar(20),

8L&I"o;KB'u8R8i O0

@E_mail varchar(20),51Testing软件测试网[6\D}xpiW9pr9~

 @phone varchar(11),

1I8X)P2Ma['`!v-d+El0

 @Img_per varchar(20)51Testing软件测试网;l7D n ?4x$x

As

Y3t }MF,I8R%g1o0

 Update users set name=@name,E_mail=@E_mail,phone=@phone,Img_per=@Img_per where name=@name(namesession处获取)

%`9C1R{"H1e0

Go

5I*eOzb2W1p p[4Q0

2.6判断旧密码

XQr"_+eWBn/_0

Create proc Isoldpwd

&I#[4o HN [0

 @name varchar(20)

2SW-GS[&kH0

As51Testing软件测试网H0]*wh? e:H

Select pass where name=@name51Testing软件测试网C*s0K2mX(O#i+W;k!F

2.7修改密码

*f `z m4ZR:n0

Create proc modify_pass51Testing软件测试网2X#G9C*_Di%_w

 @pass varchar(20),51Testing软件测试网%?1hX8F-Fi:u

 @name varchar(20)51Testing软件测试网]/~@2t#C)S

As

9W!~cd+`0

 Update users set pass=@pass where name=@name(namesession处获取)

-[+^zL*FaM0

Go

e3M']0_Y/HlBP/p0

3,编写users51Testing软件测试网!w8NVSCh&\

Using System.Data.Sqlcient;//需自己添加此命名空间

`xd&WqICo0

using System.Collections;//需自己添加此命名空间,用于arraylist

R*`bc}r0

Public Class users51Testing软件测试网F9a:R&};w+?J5S;Q L

{

? }o*B+_n.Z0

  Public users()

\t}v8\RND0

  {

;e F#~wEk0

     /*添加构造函数的逻辑*/51Testing软件测试网,W8^ky [cp h6I p

  }

EeD:~.H:v[y0

  //定义连接字符串

zq A^b ]Ip0

  Private string Con_users……51Testing软件测试网&^-G+`bL5r%ey

  //定义判断用户是否已注册的函数

0E8k2l7\?+l wj$^0

  Public bool D_checkname(string name)51Testing软件测试网 sMUh-|

  {51Testing软件测试网nNmTp1f

      /sqlconnection连接51Testing软件测试网I(q:a9C9t E b0H

      //open

2ll(A$^g_#NX0

      //sqlcommand执行存储过程

]m x f9u#N0

      //设定存储过程的类型51Testing软件测试网6\Hc_%md(ub

      //添加参数并赋值51Testing软件测试网P@:Q U@

      //执行插入命今,使用ExecuteScalar() (,索检单个值,executereader所需要代码较少)

K2OCDL u4q0

      //如果查到返回true,否则false51Testing软件测试网^)r@7^i G6x

      //注意异常抛出

({j#R,V tq0

      //关闭连接

:bK-ITwyQ-]0

  }51Testing软件测试网/d M6T"x8sYTq,p

  //定义注册函数,返回类型为空,参数类型为arraylist类型数据51Testing软件测试网wp^5J(\|

  //注意实际系统中的arraylist应与此处的编号相对立51Testing软件测试网&_$` q9? sq^},Sp

  Public void D_addusers(arraylist arr)51Testing软件测试网H7eZj;l

  {51Testing软件测试网)] A*s f4G

      //sqlconnection连接

2\ll+xmU h0

      //open51Testing软件测试网_Y7o#a1[#~i2t"l)E

      //sqlcommand执行存储过程51Testing软件测试网Pq/BB(a:@/i;h

      //设定存储过程的类型51Testing软件测试网-r4Lr2Hn(QN

      //添加参数并赋值,注意编号从0开始的

4a$H(R~f2R(|0

      //执行插入命今,使用ExecuteNonQuery(,适应于无返回数据集)

8YF2oJ7gu9sqgM0

      //注意异常抛出51Testing软件测试网0YGT5e9F

      //关闭连接51Testing软件测试网$TJeaG?s:ANW

  }

w#^2f L9dcn ~W0

  //定义登录程序,返回bool

)c,N+o/w(\7~ ?gE0

  Public bool D_logining(string name,string pass)51Testing软件测试网5JG t:zYN"f

  {

Y\(p-e [`0

      //参照D_checkname

8cI7uK`&U0

  }

t%hJ"r'fce9G1a`0

  //定义显示个人信息的函数,返回datarow51Testing软件测试网~4KC l*I9_

  Public DataRow D_usersinformation(string name)

N"vyjy0

 {

-H Oj0o KQ0

    //与注册有些类型,注意此处使用SqlDataAdapter

fmT@ `+k5~G0

    //需要填充数据集,将数据集放在数据表中return ds.Tables[0].Rows[0]51Testing软件测试网Uk4D%l \hp`

 }51Testing软件测试网Z-B e]y)r.QT'x

 //定义修改个人信息,与添加几乎一样51Testing软件测试网;eP9{cEfy

 Public void D_modifyusers(arraylist arr)51Testing软件测试网f~0|{b0X)Qh

 {

m9q,Rx*K r$`7c8nBp0

    //

n)|W!o)O)E2\y,xd0

 }

6V.K,b+V,vi0

 //定义旧密码判断函数,D_checkname(string name)几乎一样51Testing软件测试网L UPnvv,m\

 Public bool D_checkoldpass(string name)51Testing软件测试网8lB0f0J2C,}x

 {51Testing软件测试网!t2q*eQ!H%lY

   //

3N5b3r#IV5I;Z`0

 }51Testing软件测试网jiU2ru+rL uh

 //定义修改密码函数,返回void51Testing软件测试网0aMwl&r2S5V

 Public void D_modifypass(stirng pass,string name)

~GL}k/P R]9q)WA0

 {

~gl5c9o'B!{0

   //,跟更新没啥区别,注意请使用ExecuteNonQuery()

{ IO ]+in0

 }51Testing软件测试网[7Jk`:M aZC

}

Y IW ^ @&[nT0

4,程序实现51Testing软件测试网QX/c"i&OB

在事件代码中,实例化users,调用相应函数,注意session的应用51Testing软件测试网.y#?nij5O\w,\

 51Testing软件测试网O%C.P'_u]O

qwen 2010-1-2051Testing软件测试网*f(]Q YF@


TAG:

 

评分:0

我来说两句

Open Toolbar