1300330129张涛-电子相册系统的设计与实现
- 格式:doc
- 大小:3.13 MB
- 文档页数:30
电子相册制作教程制作个性化电子相册是记录美好回忆的一种方式,下面是一份简单的教程,帮助你制作出独一无二的电子相册。
步骤一:选择合适的电子相册制作软件选择一款专业的电子相册制作软件,比如Photoscape、Adobe InDesign或者MyMemories Suite等。
这些软件提供了丰富的模板和工具,帮助你设计个性化的电子相册。
步骤二:收集和整理照片浏览你的照片库,选择和整理出你想要放入电子相册的照片。
可以按照时间、场景或者主题进行分类整理,方便后续制作。
步骤三:选择合适的模板打开选定的制作软件,选择一个合适的电子相册模板。
可以根据个人喜好选择色彩、风格和版式等,确保能够展示照片的最佳效果。
步骤四:插入照片将整理好的照片插入到相应的相册页面中。
按照模板的要求,调整照片的尺寸、位置和角度等,确保照片显示效果达到最佳。
步骤五:添加文字和字体效果根据需要,可以为每张照片添加相应的文字说明。
选择适合的字体、颜色和大小,确保文字清晰可读且与照片相互呼应。
步骤六:加入背景音乐和过渡效果为电子相册添加背景音乐,让整个相册更加丰富动感。
同时使用过渡效果将每个页面进行自然切换,使整个展示过程更加流畅。
步骤七:预览和调整制作完成后,进行预览并调整相册内容。
检查照片的排列、字体效果和音乐是否符合预期,如果有需要可以进行进一步的调整。
步骤八:保存和分享最后,将制作好的电子相册保存为可执行文件或者视频格式,方便在各种设备上播放。
你还可以选择将相册分享给亲朋好友,一起回味美好时光。
希望这份简单的电子相册制作教程能够帮助到你,祝你制作出漂亮的电子相册!。
电子相册系统课程设计一、课程目标知识目标:1. 让学生掌握电子相册系统的基本概念,了解其工作原理与构成要素;2. 使学生了解并掌握电子相册系统的设计流程,包括需求分析、功能设计、界面设计等;3. 帮助学生掌握一定的编程知识,如HTML、CSS、JavaScript等,以便实现电子相册的基本功能。
技能目标:1. 培养学生运用所学知识进行电子相册系统设计与开发的能力;2. 培养学生独立分析问题、解决问题的能力,提高创新意识和团队协作能力;3. 培养学生运用现代信息技术手段,进行项目实践的能力。
情感态度价值观目标:1. 培养学生对电子相册系统设计与开发的兴趣,激发学习热情;2. 培养学生严谨、务实的科学态度,注重实践与理论相结合;3. 培养学生关爱他人,学会分享与合作,提高人际沟通能力。
课程性质:本课程为实践性较强的课程,结合理论知识与实践操作,培养学生的动手能力与创新能力。
学生特点:学生具备一定的计算机操作能力,对电子相册系统有一定了解,但编程能力有限。
教学要求:结合学生特点,注重理论与实践相结合,充分调动学生的积极性与主动性,提高学生的实践能力与创新能力。
将课程目标分解为具体的学习成果,以便在教学过程中进行有效评估。
二、教学内容本课程教学内容分为五个部分,确保学生能够系统性地掌握电子相册系统的设计与开发。
第一部分:电子相册系统概述1. 了解电子相册系统的基本概念、发展历程及应用场景;2. 分析电子相册系统的功能特点与优势;3. 探讨电子相册系统的发展趋势。
第二部分:电子相册系统设计原理1. 学习电子相册系统的设计流程与规范;2. 分析电子相册系统的需求,明确设计目标;3. 了解电子相册系统的架构设计与模块划分。
第三部分:编程基础1. 学习HTML、CSS、JavaScript等编程语言的基本语法;2. 掌握DOM操作,实现电子相册的动态效果;3. 了解Photoshop等图像处理软件的基本操作,为电子相册设计提供素材。
电子证照系统设计方案一、需求分析在设计电子证照系统之前,首先需要对系统的需求进行分析。
1.用户需求用户需要能够方便地获取和管理自己的电子证照,能够通过系统快速查询和验证证照的真实性和有效性。
2.管理需求系统管理员需要能够对证照进行统一管理,包括证照的录入、存储、更新和删除等。
同时需要确保系统的数据安全性和可靠性。
3.安全需求二、系统设计基于以上需求分析,可以设计出以下的电子证照系统架构。
1.用户端设计用户可以通过手机、电脑等终端设备访问电子证照系统,进行证照的查询、申请和管理等操作。
(1)用户登录:用户需要先进行登录,验证身份后才能进行证照的操作。
登录方式可以包括账号密码登录、短信验证码登录等。
(2)证照查看:用户可以在系统中查看自己的证照信息,包括证照的基本信息、有效期等。
(3)证照申请:用户可以通过系统进行证照的申请和更新等操作。
申请过程中需要提供相应的材料和信息。
(4)证照验证:用户可以通过系统进行证照的验证,验证证照的真实性和有效性。
系统可以提供相应的验证功能,比如条形码识别、人脸识别等。
2.后台管理设计系统管理员可以通过后台管理系统对证照进行统一管理。
(1)证照录入:管理员可以通过后台管理系统对证照进行录入操作,包括证照的扫描、上传等。
录入过程中需要对证照进行标识和分类。
(2)证照存储:系统需要提供一个可靠的证照存储系统,保证证照的安全性和完整性。
(3)证照更新:管理员可以通过后台管理系统对证照进行更新操作,比如证照的续期、变更等。
(4)权限控制:后台管理系统需要设置不同的权限,确保只有具备相应权限的管理员才能进行一些敏感操作。
(5)数据安全:后台管理系统需要具备相应的数据安全保护机制,包括数据加密、备份、灾备等。
3.安全性设计为了保证电子证照系统的安全性,可以采取以下措施。
(1)数据加密:对用户的个人信息和证照等敏感数据进行加密存储,防止数据泄露。
(2)访问控制:对于系统的访问需要进行身份验证,确保只有授权的用户能够访问系统。
教案标题:设计并制作自己的电子相册引言:《设计并制作自己的电子相册》是小学三年级上册综合实践活动的一节课,旨在引导学生通过学习电子相册的设计和制作过程,培养学生的创新能力、动手能力和团队合作精神。
通过本节课的学习,学生将能够使用电子工具设计个性化的相册,并且可以展示自己的照片和文字。
学情分析:小学三年级的学生已经基本掌握了电子设备的基本操作,对于电子相册这一新型媒介具有一定的认知和使用经验。
他们具备一定的创新思维能力和动手实践能力,但在设计和制作过程中仍然需要指导和帮助。
教学目标:1. 了解电子相册的概念、作用和使用方法;2. 学会使用电子设备及相关软件制作个性化的电子相册;3. 培养学生的创新思维、动手能力和团队合作意识;4. 能够展示自己的照片和文字,并进行简单的编辑和分享。
教学重难点:1. 引导学生理解电子相册的概念和作用;2. 教授学生使用电子设备和软件制作电子相册的基本方法。
教学准备:1. 教师准备:教案、电子设备(如平板电脑或电脑)、相册软件或应用、学生手册等;2. 学生准备:纸张、彩色笔、照片等。
教学过程:1. 导入(10分钟)a. 教师通过图片或视频等形式展示一些精美的电子相册,并与学生进行简要的讨论,让学生了解电子相册的概念和作用。
b. 教师提问:“你们平时都会拍照片吗?你们有没有做过电子相册?”引导学生思考和回答。
2. 学习(30分钟)a. 教师简要介绍电子相册的基本制作步骤和常用软件或应用,并演示使用其中一种软件进行相册制作的过程。
b. 学生分组借助教师指导,使用电子设备和相册软件开始设计和制作自己的电子相册。
学生可以使用照片、插图、文字等元素,展示自己的生活经历和感受。
c. 教师在制作过程中提供必要的指导和帮助,确保学生能够顺利完成相册的设计和制作。
3. 分享与展示(20分钟)a. 学生完成相册后,每个小组选择一位代表进行相册分享和展示。
b. 学生依次展示自己的电子相册,并分享设计灵感、制作过程和心得体会。
目录1设计目的 (3)2 设计题目及要求 (3)3设计算法分析 (3)3.1 模块层次图 (3)3.2 核心算法描述 (4)3.3 系统特点 (5)4程序代码 (5)5调试情况 (49)6结论 (49)参考文献 (49)导航提示信息。
②index.asp中用循环结构分别显示所有记录集页码。
以及对多种条件的复杂判断,并根据不同的条件定义不同的记录集查询条件。
3.3 系统特点【1】特点本系统是动态网页系统,不同于CD/VCD等静止图片的应用系统。
利用网页管理图片,是一个多用户环境下的网页图片管理系统。
它可以实现图片上传、网上管理、网上浏览和交流的功能。
【2】分工数据库设计:存储图片信息电子相册浏览与管理:1.注册、登录和用户信息操作2.浏览图片3.图片评论4.删除服务器上的图片文件4.程序代码【1】程序代码①conn.asp —数据库连接文件<!--#include file="Connections/conn.asp"--><%'如果出错,则跳出下一步on error resume next'定义一个数据库连接对象的具体实例set conn=server.createobject("adodb.connection")'打开该数据库连接conn.open MM_conn_STRING%><%'自定义函数Function SetPwd(sPwd)sSql = ""For i = 1 To Len(sPwd)If bType = True ThensSql = sSql & Chr(-Asc(Mid(sPwd, i, 1)) - 10000) ElsesSql = sSql & Chr(-Asc(Mid(sPwd, i, 1)) - 10000) End IfNextSetPwd = sSqlEnd FunctionFunction Xszh(zh)'转换参数中特殊字符if zh<>"" and not isnull(zh) thenzh=replace(zh," "," ")zh=replace(zh,"€","'")zh=replace(zh,chr(13),"<br>")zh=lcase(zh)zh=replace(zh,"<table","<table")zh=replace(zh,"<tr","<tr")zh=replace(zh,"<%","<%")zh=replace(zh,"<script","<script")zh=replace(zh,"<title>","<title>")zh=replace(zh,"</body>","</body>")zh=replace(zh,"<td","<td")zh=replace(zh,"</table>","</table>")zh=replace(zh,"</tr>","</tr>")zh=replace(zh,"<input","<input")zh=replace(zh,"<!doctype","<doctype")zh=replace(zh,"</td>","</td>")zh=replace(zh,"<a ","<a target=_blank")zh=replace(zh,"<input","<input")zh=replace(zh,"<!doctype","<doctype")xszh = zhend ifEnd FunctionFunction Zpxr(zp)'清除字符串中特殊的字符if zp<>"" thenzp=replace(zp,",","")zp=replace(zp,"'","")zp=replace(zp,"/","")zp=replace(zp,"\","")end ifEnd FunctionFunction Xrzh(zh)if zh<>"" thenzh=replace(zh,"'","€")Xrzh = zhend ifEnd FunctionFunction Yzm()CYZM = cstr( Replace(Timer(), ".", "") * Rnd() Mod 10000) for i = 1 to len(cyzm)zyzm = zyzm + mid( cyzm ,len(cyzm) - i + 1 ,1 )nextif len( zyzm ) < 4 then zyzm = "0" + zyzmif len( zyzm ) < 3 then zyzm = "00" + zyzmif len( zyzm ) < 2 then zyzm = "0000" + zyzmYzm = zyzmEnd FunctionFunction BQ()bq = yr_ban+" "+yr_yr+" 2 006©"End FunctionFunction JSZC()jszc="<a href='#' target=_bank> Power By aHo</a>"End functionfunction bb()bb="电子相册"end functionfunction jdsj()jdsj = right(cstr(date()),len(cstr(date()))-2)+" "+left(cstr(time()),instrrev(cstr(time()),":")-1) end function%><base onmouseover="window.status='<%=bb%>';return true">②pic_zc.asp —用户注册页面<!--#include file="conn.asp"--><htm><head><script language='javascript'>function xgjc(mm){if(mm==""){alert('密码不能为空!');document.de.mm.focus();return false;}if(mm.indexOf("'")>=0 ||mm.indexOf("<")>=0 ||mm.indexOf(">")>=0 ||mm.indexOf(".")>=0) {alert('不能有乱码!');document.de.mm.focus();return false;}}function zcjc(yhm,mm){if(yhm==""){alert('用户名不能为空!');document.zc.yhm.focus();return false;}var aa ="";aa = yhm.substring(0,1);if((aa<='z'&&aa>='a')||(aa<='Z'&&aa>='A')){}else{alert('首位不是字母!');document.zc.yhm.focus();return false;}if(yhm.indexOf("'")>=0 ||yhm.indexOf("<")>=0 ||yhm.indexOf(">")>=0 ||yhm.indexOf(".")>=0){alert('用户名不能有乱码!');document.zc.yhm.focus();return false;}if(mm==""){alert('密码不能为空!');document.zc.mm.focus();return false;}if(mm.indexOf("'")>=0 ||mm.indexOf("<")>=0 ||mm.indexOf(">")>=0 ||mm.indexOf(".")>=0) {alert('不能有乱码!');document.zc.mm.focus();return false;}}</script><link rel="stylesheet" href="images/style.css" type="text/css"><title>注册</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><body><!--#include file="head.asp"--><%cz=request.querystring("cz")mm=request.form("mm")yhm=request.form("yhm")qx=request.form("qx")xb=request.form("xb")if cz="xgxg" and mm<>"" and yhm<>"" thenexec="update admin set pass='"+setpwd(mm)+"',lx='"+qx+"',xb='"+xb+"' where yhm='"+yhm+"'"conn.execute execconn.closesession("picpass") = mmsession("picqx") = qxsession("picqx")= xb%><script language='javascript'>alert('恭喜,修改成功!');window.location="index.asp";</script><%end ifif cz="zccg" and mm<>"" and yhm<>"" then''判断是否重复set rs=server.createobject("adodb.recordset")exec="select * from admin where yhm='"+yhm+"'"rs.open exec,conn,1,1if rs.eof thenyhm=xrzh(yhm)exec="insert into admin (xb,yhm,pass,jb,rq,lx) values ('"+xb+"','"+yhm+"','"+setpwd(mm)+"','1','"+cstr(date())+"','"+qx+"')"conn.execute execconn.closesession("picyhm") = yhmsession("picxb") = xbsession("picjb") = "1"session("picpass") = mmsession("picqx") = qx%><script language='javascript'>alert('恭喜,申请成功!');window.location="index.asp";</script><%else%><script language='javascript'>alert('抱歉,此用户名已经有人用了,请换名后重新申请!');window.location="pic_zc.asp?cz=zc";</script><%end ifend if%><p> </p><%if cz="" then%><form name="zc" action="pic_zc.asp?cz=zccg" method="post"><table align="center"><tr><td>用户名</td><td><input name="yhm" type="text" size="10" maxlength="10"></td></tr><tr><td>密码</td><td><input name="mm" type="password" size="10" maxlength="10"></td></tr><tr><td headers="25">性别</td><td><input type="radio" value="男" name="xb" checked>男<input type="radio" value="女" name="xb">女</td></tr><tr><td headers="25">浏览范围</td><td><input type="radio" value="0" name="qx">本人<input type="radio" value="1" name="qx" checked>公共</td></tr><tr><td align="center" colspan="2"><input type="submit" name="sdfsd" value="注册" onClick="javascript:return zcjc(yhm.value,mm.value);"> <input type="button" value="返回" onClick="javascript:window.location='index.asp';"></td></tr></table></form><%else%><form name="de" action="pic_zc.asp?cz=xgxg" method="post"><table align="center"><tr><td align="center" >用户名:</td><td><input name="yhm" type="text" size="10" maxlength="10" value="<%=session("picyhm")%>" readonly=""></td></tr><tr><td align="center">新密码:</td><td><input name="mm" type="password" size="10" maxlength="10" value="<%=setpwd(session("picpass"))%>"></td></tr><tr><td headers="25">性别</td><td><input type="radio" value="男" name="xb" <%if session("picxb")="男" then response.write "checked"%>>男<input type="radio" value="女" name="xb" <%if session("picxb")="女" then response.write "checked"%>>女</td></tr><tr><td headers="25">浏览范围</td><td><input type="radio" value="0" name="qx" <%if session("picqx")="0" then response.write "checked"%>>本人<input type="radio" value="1" name="qx" <%if session("picqx")="1" thenresponse.write "checked"%>>公共</td></tr><tr><td align="center" colspan="2"><input type="submit" name="sdfsd" value="修改" onClick="javascript:return xgjc(yhm.value,mm.value);"> <input type="button" value="返回"onClick="javascript:window.location='index.asp';"></td></tr></table></form><%end if%></body></htm>③pic_dl.asp —用户登录页面<!--#include file="conn.asp"--><html><head><link rel="stylesheet" href="images/style.css" type="text/css"><title>用户登录</title></head><% '获取表单信息yhm=request.form("yhm")pass=request.form("pass")dz=request.querystring("dz")pass=setpwd(pass) '用自定义函数加密密码if dz="exit" then'如果用户执行退出功能,则清空session变量session("picyhm")=""session("picpass")=""session("picjb")=""end ifif yhm<>"" and dz="sc" then'判断用户名是否为空,以及是否是注册操作set rs=server.createobject("adodb.recordset")'定义记录集,查询该用户名的记录exec="select * from admin where yhm='"+yhm+"' and jb<>'0'"rs.open exec,conn,1,1if not rs.eof then '如果存在用户名,则保存该用户记录字段信息grmm=rs("pass")xb=rs("xb")rq=rs("rq")jb=rs("jb")if pass<>grmm then response.redirect "pic_dl.asp"'比较输入的密码是否符合,不合法则重新登录else'如果不存在该用户名,则重新登录response.redirect "pic_dl.asp"end if'登陆成功则保存该用户记录信息,并记住该用户的IP地址,最后返回到index.asp session("picyhm")=yhmsession("picpass")=passsession("picjb")=jbsession("picqx")=rs("lx")session("picxb")=rs("xb")session("picip")=request.servervariables("remote_addr")response.redirect "index.asp"end if%><body><!--#include file="head.asp"--><br><center><form name="from" method="post" action="pic_dl.asp?dz=sc"><table align="center"><tr><td>用户名</td><td><input type=text name=yhm size="10"></td></tr><tr><td>密码</td><td><input type="password" name="pass" size="10"></td></tr></table><table cellpadding="4" cellspacing="0" align="center"><tr><td align="center"><input type=submit onClick="javascript:return dl(yhm.value,pass.value);" value="登录" ><input type=button onClick="javascript:window.location='index.asp> <input type=button onClick="javascript:window.location='pic_zc.asp?cz=zc';" value="注册"></td></tr></table></center></form></center></body></htm><script language='javascript'>function dl(yhm,pass){if (yhm==""){alert('输入用户名!');document.from.yhm.focus();return false;}if (pass==""){alert('输入密码!');document.from.pass.focus();return false;}}</script>④head.asp —头部结构页面<style type="text/css">body {font-family:"Arial", "宋体";font:11px verdana;padding:0px 0px 0px 0px;margin:0px 0px 0px 0px;BACKGROUND:url(images/bg.gif);scrollbar-face-color : #D8DBDF;scrollbar-highlight-color : #FFFFFF;scrollbar-shadow-color : #C1C6CC;scrollbar-3dlight-color : #ABB1B3;scrollbar-arrow-color : #7F8996;scrollbar-track-color : #F8FAF9;scrollbar-darkshadow-color : #ABB1B3}.leftbg {background-color: #f5f5f5}.mainbg {background-color: #f7f7f7}.rightbg {background-color: #f5f5f5}.white {color:#ffffff;font-size:12px;}td {font-family: "Verdana", "Arial", "Helvetica", "sans-serif"; font-size: 11px}A {COLOR: #000000;FONT: 11px verdana;TEXT-DECORA TION: none}A:link {COLOR: #000000;FONT: 11px verdana;TEXT-DECORA TION: noneA:visited {COLOR: #000000;FONT: 11px verdana;TEXT-DECORA TION: none}A:active {COLOR: #000000;FONT: 11px verdana;TEXT-DECORA TION: none}A:hover {COLOR: #000000;TEXT-DECORA TION: underline}INPUT.buttonface {font:12px;height:20;BORDER-BOTTOM: #CCCCCC 1px groove; BORDER-RIGHT: #CCCCCC 1px groove; BACKGROUND-COLOR: #F7F7F7;}.all {BORDER-RIGHT: #CCCCCC 1px solid;BORDER-TOP: #CCCCCC 1px solid;BORDER-LEFT: #CCCCCC 1px solid;BORDER-BOTTOM: #CCCCCC 1px solid }.tabletop {background-color: #EEEEEE}.tablefirst {background-color: #F5F5F5}.tablesecond {background-color: #FFFFFF.Standard-Input {BORDER-RIGHT: #2FA70F 1px solid;BORDER-TOP: #2FA70F 1px solid;FONT-SIZE: 9pt;BORDER-LEFT: #2FA70F 1px solid;BORDER-BOTTOM: #2FA70F 1px solid;HEIGHT: 18px;BACKGROUND-COLOR: #ffffff;FONT-FAMIL Y: Verdana, Helvetica, sans-serif; }.Standard-TEXTAREA {BORDER-RIGHT: #2FA70F 1px solid;BORDER-TOP: #2FA70F 1px solid;FONT-SIZE: 9pt;BORDER-LEFT: #2FA70F 1px solid;BORDER-BOTTOM: #2FA70F 1px solid;BACKGROUND-COLOR: #ffffff;FONT-FAMIL Y: Verdana, Helvetica, sans-serif; }#formStyle1 {BORDER-RIGHT: #7f7f7f 1px solid;BORDER-TOP: #7f7f7f 1px solid;FONT: 11px Verdana, Arial, Helvetica, sans-serif; BORDER-LEFT: #7f7f7f 1px solid;WIDTH: 100px;COLOR: #2f3f5f;BORDER-BOTTOM: #7f7f7f 1px solid;BACKGROUND-COLOR: #ffffff}#formStyle2 {BORDER-RIGHT: #7f7f7f 1px solid;BORDER-TOP: #7f7f7f 1px solid;FONT: 11px Verdana, Arial, Helvetica, sans-serif; BORDER-LEFT: #7f7f7f 1px solid;WIDTH: 250px;COLOR: #2f3f5f;BORDER-BOTTOM: #7f7f7f 1px solid;BACKGROUND-COLOR: #ffffff}#formStyle3 {BORDER-RIGHT: #7f7f7f 1px solid;BORDER-TOP: #7f7f7f 1px solid;FONT: 11px Verdana, Arial, Helvetica, sans-serif; BORDER-LEFT: #7f7f7f 1px solid;WIDTH: 350px;COLOR: #2f3f5f;BORDER-BOTTOM: #7f7f7f 1px solid;BACKGROUND-COLOR: #ffffff}#formStyle4 {BORDER-RIGHT: #7f7f7f 1px solid;BORDER-TOP: #7f7f7f 1px solid;FONT: 11px Verdana, Arial, Helvetica, sans-serif; BORDER-LEFT: #7f7f7f 1px solid;WIDTH: 60px;COLOR: #2f3f5f;BORDER-BOTTOM: #7f7f7f 1px solid;BACKGROUND-COLOR: #ffffff}#formStyle5 {BORDER-RIGHT: #7f7f7f 1px solid;BORDER-TOP: #7f7f7f 1px solid;FONT: 11px Verdana, Arial, Helvetica, sans-serif; BORDER-LEFT: #7f7f7f 1px solid;WIDTH: 25px;COLOR: #2f3f5f;BORDER-BOTTOM: #7f7f7f 1px solid;BACKGROUND-COLOR: #ffffff}#formStyle6 {BORDER-RIGHT: #7f7f7f 1px solid;BORDER-TOP: #7f7f7f 1px solid;FONT: 11px Verdana, Arial, Helvetica, sans-serif; BORDER-LEFT: #7f7f7f 1px solid;WIDTH: 130px;COLOR: #2f3f5f;BORDER-BOTTOM: #7f7f7f 1px solid;BACKGROUND-COLOR: #ffffff}#formStyle7 {BORDER-RIGHT: #7f7f7f 1px solid;BORDER-TOP: #7f7f7f 1px solid;FONT: 11px Verdana, Arial, Helvetica, sans-serif; BORDER-LEFT: #7f7f7f 1px solid;WIDTH: 40px;COLOR: #2f3f5f;BORDER-BOTTOM: #7f7f7f 1px solid;BACKGROUND-COLOR: #ffffff}#formStyle8 {BORDER-RIGHT: #7f7f7f 1px solid;BORDER-TOP: #7f7f7f 1px solid;FONT: 11px Verdana, Arial, Helvetica, sans-serif; BORDER-LEFT: #7f7f7f 1px solid;WIDTH: 100px;COLOR: #2f3f5f;BORDER-BOTTOM: #7f7f7f 1px solid;BACKGROUND-COLOR: #ffffff}#formStyle9 {BORDER-RIGHT: #7f7f7f 1px solid;BORDER-TOP: #7f7f7f 1px solid;FONT: 11px Verdana, Arial, Helvetica, sans-serif; BORDER-LEFT: #7f7f7f 1px solid;WIDTH: 48px;COLOR: #2f3f5f;BORDER-BOTTOM: #7f7f7f 1px solid;BACKGROUND-COLOR: #ffffff}#formStyle11 {BORDER-RIGHT: #7f7f7f 1px solid;BORDER-TOP: #7f7f7f 1px solid;FONT: 11px Verdana, Arial, Helvetica, sans-serif; BORDER-LEFT: #7f7f7f 1px solid;WIDTH: 90px;COLOR: #2f3f5f;BORDER-BOTTOM: #7f7f7f 1px solid;BACKGROUND-COLOR: #ffffff}#formStyle12 {BORDER-RIGHT: #7f7f7f 1px solid;BORDER-TOP: #7f7f7f 1px solid;FONT: 11px Verdana, Arial, Helvetica, sans-serif; BORDER-LEFT: #7f7f7f 1px solid;WIDTH: 85px;COLOR: #2f3f5f;BORDER-BOTTOM: #7f7f7f 1px solid;BACKGROUND-COLOR: #ffffff}#formStyleall {BORDER-RIGHT: #7f7f7f 1px solid;BORDER-TOP: #7f7f7f 1px solid;FONT: 11px Verdana, Arial, Helvetica, sans-serif; BORDER-LEFT: #7f7f7f 1px solid;COLOR: #2f3f5f;BORDER-BOTTOM: #7f7f7f 1px solid;BACKGROUND-COLOR: #ffffff}.uptitle {BORDER-RIGHT: #bbbbbb 1px solid;BORDER-TOP: #f7f7f7 1px solid;FONT-SIZE: 12px;BORDER-LEFT: #f7f7f7 1px solid;COLOR: #000000;PADDING-TOP: 2px;BORDER-BOTTOM: #bbbbbb 1px solid;HEIGHT: 22px;BACKGROUND-COLOR: #eeeeee}</style><table width="100%" border="0" cellspacing="0" cellpadding="0" background="images/top-back.gif" align="center"><tr background="images/top-back.gif"><td height="50" align="center" width="190"><h2 style="font-size:32px;color:#ffffff;padding-top:24px;">电子相册</h2></td> <td align="center" height="74"> </td></tr></table><table width="100%" border="0" cellspacing="1" cellpadding="0" bgcolor="#7894AF" align="center"><tr bgcolor="#eeeeee" height="20"><td><%if session("picyhm")="" then%><table width="100%"><tr><td width="20%" align="center"><font color="#FF0000">目前您没有登录</font></td><td align="right"><a href="pic_dl.asp">登录</a> <a href="pic_zc.asp">注册</a> </td></tr></table><%else%><table width="100%"><tr><td width="20%" align="center">欢迎<font color="#FF0000"><%=session("picyhm")%></font> 进入</td><td align="right"><a href="pic_zc.asp?cz=xg&jbm=<%=jbm%>">修改信息</a> <a href="index.asp?cz=exit">退出</a> </td> </tr></table><%end if%></td></tr></table>⑤index.asp —图片浏览主页面<!--#include file="conn.asp"--><html><head><title>电子相册</title><link rel="stylesheet" href="images/style.css" type="text/css"><meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><%'************************************************************************ *******'删除指定用户信息和评论内容zt=request.querystring("zt")id = request.QueryString("id")if id <> "" thenexec = "delete from admin where yhm = '" + id + "'"conn.execute execexec = "delete from pl where yhm = '" + id + "'"conn.execute execconn.closeresponse.Redirect("index.asp")end if'*************************************************************************** ****%><body><!--#include file="head.asp"--><table border="0" cellpadding="0" cellspacing="0" width="95%" align="center"height="400"><tr><td height="2"></td></tr><tr><td width="20%" valign="top"><table border="0" cellpadding="1" cellspacing="1" width="100%" background="images/bg.gif" align="center"><%'************************************************************************ *******'定义记录集获取注册用户信息set rs=server.createobject("adodb.recordset")exec="select * from admin order by id desc"rs.open exec,conn,1,1'获取传递的参数page1 =int(Request.QueryString("page1"))'指定每页显示的记录数rs.PageSize =8'判断页码变量值超出指定范围的处理If page1 < 1 Then page1 = 1If page1 > rs.PageCount Then page1 = rs.PageCount'指定当前要显示的页数if not rs.eof then rs.AbsolutePage =page1'循环显示注册用户记录for i = 1 To rs.PageSize'判断如果记录集没有则跳出循环If rs.EOF Then Exit For'获取记录集中的用户名yhm = rs("yhm")if rs.eof then exit for'新定义一个记录集,查询符合该用户名的上传图片信息set rs1=server.createobject("adodb.recordset")exec="select * from zp where yhm='" + yhm + "'"rs1.open exec,conn,1,1'获取记录数gs = rs1.recordcount'获取用户权限qx=session("picqx")%><tr bgcolor="#E3E9F1" height="25"><td align="center" valign="top"><a href=<%'判断,如果是公开、管理员或者自己登录,则可以显示该用户名的所有图片if rs("lx")="1" or session("picjb")="admin" or session("picyhm")=rs("yhm") then response.write "index.asp?zt="+rs("yhm")else'否则,将显示空链接response.write "#"end if %>> <%=rs("yhm")%></a></td><td align="center"><%=rs("xb")%></td><td align="center"><font color="#FF0000"><%=gs%></font>张照片<%'判断,如果不是admin管理员,同时没有上传图片,而且所操作的记录不是admin,则显示删除链接if session("picjb")="admin" and gs = 0 and rs("jb")<>"admin" then%><a href="index.asp?id=<%=yhm%>" onClick="javascript:confirm('是否删除!')">删除</a><%end if%></td></tr><%rs.movenextnext'************************************************************************** *****%><tr><td colspan="3" align="center"><a href="index.asp?zt=qb" class="white">查看全部照片</a></td></tr></table><br><center>第<%'************************************************************************ *******'循环显示页数链接,如果是当前页则不显示中括号标记for j=1 to rs.PageCount%><a href="index.asp?page1=<%=j%>"><%if j=page1 thenresponse.write jelseresponse.write "["+cstr(j)+"]"end if%></a><%nextif rs.recordcount=0 then response.Write("0")'*************************************************************************** ****%>页</center></td><td valign="top"><br><%'************************************************************************ *************'定义记录集,获取上传图片信息set rs=server.createobject("adodb.recordset")'如果退出,则清空登录用户变量cz=request.querystring("cz")if cz="exit" thensession("picyhm")=""session("picjb")=""session("picpass")=""response.redirect "index.asp"end if'判断主题是否为空,为空则显示所有图片if zt="" then zt="qb"'判断是否显示全部图片if zt="qb" then'判断如果是管理员,则显示所有图片if session("picjb")="admin" thenexec="select * from zp order by id desc"'否则只显示被公开浏览的图片或者登录用户自己上传图片elseexec="select * from zp where lx='1' or yhm='"+session("picyhm")+"' order by id desc"end if'当主题不为空时elseif zt<>"" then'判断如果是管理员或者登录用户,则查询该主题下的所有图片if session("picjb")="admin" or session("picyhm")=zt thenexec="select * from zp where yhm='"+zt+"' order by id desc"'否则,就只能显示主题下的所有公开图片elseexec="select * from zp where yhm='"+zt+"' and lx='1' order by id desc"end ifelse'如果主题为空,则按登录用户信息查询exec="select * from zp where yhm='"+session("picyhm")+"' order by id desc"end ifend if'*************************************************************************** ****%><%'*************************************************************************** ****rs.open exec,conn,1,1'获取页码数page =int(Request.QueryString("page"))'指定每页显示页数rs.PageSize =16'判断,并处理特殊页码If page < 1 Then page = 1If page > rs.PageCount Then page = rs.PageCountif not rs.eof then rs.AbsolutePage =pageh=1'循环显示图片for i = 1 To rs.PageSizeIf rs.EOF Then Exit For%><table border="0" cellpadding="0" cellspacing="0" width="100%">。
电子相册的制作方法电子相册是一种方便快捷的展示照片和视频的方式,它不仅可以保存大量的图片和视频,还可以通过电子设备随时随地进行观看和分享。
那么,如何制作一个精美的电子相册呢?接下来,我将为大家介绍一些制作电子相册的方法。
首先,选择合适的电子相册制作工具。
目前市面上有许多电子相册制作软件,比如Adobe Spark、Magisto、FlipHTML5等,它们都提供了丰富的模板和功能,可以帮助我们轻松制作出精美的电子相册。
在选择工具时,我们可以根据自己的需求和操作习惯进行选择,确保能够快速上手并制作出满意的作品。
其次,整理和选择好要制作的照片和视频。
在制作电子相册之前,我们需要先将要使用的照片和视频进行整理和选择。
可以根据主题或时间顺序进行分类,然后挑选出最具代表性和意义的作品进行使用。
同时,我们也可以对照片和视频进行一些简单的修饰和处理,比如裁剪、调整色调等,以确保它们能够更好地融入到电子相册中。
接着,根据主题和风格进行布局和设计。
在制作电子相册时,我们可以根据相册的主题和风格进行布局和设计。
比如,如果是婚礼相册,可以选择浪漫的背景和字体;如果是旅行相册,可以选择清新的色彩和布局。
在设计时,我们可以合理安排照片和视频的顺序和位置,同时添加一些文字描述或标签,让观看者更好地理解和感受到相册所要表达的内容。
最后,导出和分享电子相册。
当电子相册制作完成后,我们可以将它导出为常见的格式,比如PDF、MP4等,以便在不同的设备上进行观看和分享。
同时,我们也可以将电子相册分享到社交平台或云存储中,让更多的人能够欣赏到我们精心制作的作品。
总的来说,制作电子相册并不难,只要我们选择合适的制作工具,整理和选择好照片和视频,根据主题和风格进行布局和设计,最后导出和分享,就能够制作出精美的电子相册。
希望以上方法能够帮助到大家,也希望大家能够通过制作电子相册记录下美好的回忆和时刻。
小学综合实践活动三年级上册《设计并制作自己的电子相册》教案一、标题:我们的电子相册二、引言:亲爱的同学们,你们有没有曾经去旅行,或者曾经和家人、朋友在一起度过了美好的时光?在这些时候,是不是经常有照片留下这些美好的瞬间?那么今天,就让我们一起用智慧的双手将这些美好的照片记录下来,做成属于我们自己的电子相册吧!三、学情分析:三年级的学生在之前的综合实践活动中,已经初步接触了一些简单的操作,如电脑的基本操作、图片的简单处理等。
在这个阶段,学生已经具备了一定的基础,能够进行简单的操作。
但是,由于学生的个体差异,部分学生可能对一些操作还不够熟练,需要教师进行个别指导。
四、教学目标:1. 知识与技能:能够掌握电子相册的基本制作方法,能够将照片进行简单的处理和编辑。
2. 过程与方法:通过小组合作,学会分工协作,共同完成电子相册的制作。
3. 情感态度价值观:培养学生对美好瞬间的留存意识,体验制作电子相册的乐趣,增强学生的审美意识。
五、教学重难点:1. 教学重点:掌握电子相册的基本制作方法,能够将照片进行简单的处理和编辑。
2. 教学难点:学会分工协作,共同完成电子相册的制作。
六、教学准备:教师提前准备好制作电子相册所需要的软件和素材,学生每人准备一台电脑和相应的软件。
七、教学过程:1. 导入新课:教师通过展示一些已经制作好的电子相册,引导学生进入主题,激发学生的兴趣和热情。
2. 讲授新课:教师详细讲解电子相册的制作方法,包括照片的选取、编辑、配乐、合成等步骤。
同时,教师也可以通过示范操作,让学生更加直观地了解制作过程。
3. 小组合作:将学生分成若干小组,每组选定一位组长,负责分工协作。
小组成员共同完成电子相册的制作,如选取照片、编辑照片、选择背景音乐、合成视频等。
4. 教师指导:在学生制作过程中,教师进行巡视指导,针对不同的小组和个体进行有针对性的辅导,帮助学生解决遇到的问题和困难。
5. 成果展示:每个小组完成自己的电子相册后,进行展示和交流。
武汉工程大学邮电与信息工程学院毕业设计(论文)网络电子相册系统的设计与实现Design and Implementation of System of Network Electronic Album作者声明本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成果,除了文中特别加以标注的地方外,没有任何剽窃、抄袭、造假等违反学术道德、学术规范的行为,也没有侵犯任何其他人或组织的科研成果及专利。
与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。
如本毕业设计(论文)引起的法律结果完全由本人承担。
毕业设计(论文)成果归武汉工程大学邮电与信息工程学院所有。
特此声明。
作者专业:作者学号:作者签名:____年___月___日摘要网络相册系统是采用开发的一个基于B/S构架的连接数据库的网站。
相比起互联网的发展,电子相册出现的时间不算太长,但却迎合了大多数网民的需求,是一个大有前途的新生事物。
本设计主要讲述了网络电子相册的基本功能和使用、数据库的设计方法。
设计最终达成了非注册用户可以浏览受限制权限的照片,注册用户在前台可以实现包括上传、查看图片、创建相册、用户登录、用户注册、修改密码、修改个人资料等电子相册的基本功能;在后台,管理员可以管理会员、添加和删除相册类型、对照片进行管理、可以发布网站新闻实现和会员进行信息分享。
并且网站能够正常运行,各个页面交互性较好。
在整个设计中基本运用基础的进行功能编程,也运用到了一些前端控件来控制输入信息,对输入信息进行验证,连接数据库使用的技术。
在系统规划中先后用数据流程图、系统功能结构图还有用例图分析了网站所需的各种数据,对网站所要实现的功能和各个模块之间的关系进行了详细的构思。
同时对本系统所需要的代码进行了认真的分析和设计,从而有利于系统的稳定。
详细的展现了系统的各个功能模块并给出了主要功能运行界面图。
本系统的设计主要通过图表来表现,实现主要通过运行的截图还有代码来实现。
标题:设计并制作自己的电子相册引言:随着科技的发展,电子产品已经成为了我们生活中不可或缺的一部分。
电子相册作为一种新型的存储和展示方式,受到了越来越多人的喜爱。
本次综合实践活动将带领三年级的学生们学习如何设计并制作自己的电子相册,让他们在享受科技带来的便利的同时,也能提高自己的创造力和实践能力。
学情分析:三年级的学生已经具备了一定的计算机操作基础,能够使用一些基本的软件工具。
但是,他们在设计和制作电子相册方面还缺乏经验和技巧。
因此,本次活动将通过实际操作和小组合作的方式,让学生们在实践中学习和进步。
教学目标:1. 知识与技能:了解电子相册的基本知识和制作方法,掌握使用计算机软件制作电子相册的技巧。
2. 过程与方法:通过实际操作和小组合作的方式,培养学生的创造力和实践能力。
3. 情感态度价值观:培养学生对科技的热爱和对美的追求,增强他们的自信心和成就感。
教学重难点:重点:了解电子相册的基本知识和制作方法,掌握使用计算机软件制作电子相册的技巧。
难点:培养学生的创造力和实践能力,让他们能够设计出独特的电子相册。
教学准备:1. 教师准备:电子相册的制作教程、教学课件、计算机设备和网络环境。
2. 学生准备:个人照片、计算机软件(如Photoshop、PowerPoint等)。
教学过程:一、导入新课1. 教师展示几张精美的电子相册,引起学生对电子相册的兴趣。
2. 教师提问:“你们想不想也制作出自己的电子相册,展示自己的美好回忆?”引导学生思考制作电子相册的意义。
3. 教师小结:“今天,我们将一起学习如何设计并制作自己的电子相册,让美好的回忆变得更加生动有趣。
”二、活动一:了解电子相册的基本知识1. 教师向学生介绍电子相册的基本概念、特点和用途。
2. 学生在教师的指导下,了解电子相册的基本知识,包括照片的选择、排版、特效等。
3. 教师提醒学生在制作电子相册时要注意版权问题,尊重他人的知识产权。
三、活动二:学习电子相册的制作方法1. 教师向学生介绍电子相册的制作步骤和技巧,包括照片的导入、编辑、排版等。
电子相册制作系统项目开发计划电子相册制作系统是一款为用户提供相片存储和分享服务的工具,它可以让用户方便地存储大量图片,并通过网络分享给其他人。
在这个数字化时代,我们需要一个更加便捷的方式来存储和分享我们的生活照片,那么电子相册制作系统就应运而生了。
为了实现这一目标,我们需要设计一款能够充分满足用户需求的应用程序。
下面是针对这个项目的开发计划:一、项目简介电子相册制作系统是一款可供用户上传、管理和分享图片的应用程序。
该系统通过提供云储存、批处理和便捷的分享功能,极大地简化了用户的操作流程。
二、项目技术为了实现这个项目,我们将采用以下技术:1、前端技术:使用Vue.js构建前端界面。
2、后端技术:采用Node.js作为后端语言,借助Express框架搭建应用程序。
3、数据库:使用MongoDB作为数据库,通过Mongoose模块来实现数据存储。
三、项目模块1、用户模块:实现用户的注册、登录、退出等基本功能;2、上传模块:用户可以通过这个模块上传自己的图片;3、管理模块:用户可以管理自己的图片,包括新建相册、删除相册、修改相册等;4、分享模块:用户可以通过这个模块分享自己的图片,包括分享到社交平台、通过链接分享等。
四、具体计划1、项目分析:分析市场上已有的产品,了解用户需求,进而制定开发技术和项目模块,通过对项目进行划分,明确各个模块的功能需求,并制作需求文档;2、数据库设计:设计数据库的实体关系和数据表结构,确保数据库的可维护性和高效性;3、前端开发:利用Vue.js构建前端页面,并实现用户注册、登录、上传等基本功能;4、后端开发:采用Node.js语言和Express框架编写后台程序,设计接口,实现与前端交互,实现上传、管理、分享等功能;5、测试与优化:在完成开发后,进行全面测试,并针对测试结果进行优化,保证系统的稳定性和流畅性;6、发布上线:经过测试和优化后,将项目正式上线,并进行数据备份和监控,提供良好的用户体验。
编号:29UML与系统分析课程设计说明书题目:电子相册系统的设计与实现学院:计算机科学与工程学院专业:软件工程学生姓名:张涛学号:1300330129指导教师:谢武2016年06月22日摘要本文介绍了电子相册系统的开发过程。
随着数码相机逐步走进寻常百姓家中,人们对电子相册的需求不断增加,在当今社会电子相册系统应经成为人们生活和工作中日以追求的物质和精神需求,婚纱照片、儿童写真、个人照片等等,它可以记录人生的美好时光,这都需要应用电子相册来保存这些照片。
本文就是以此为背景,分为系统概述、系统开发工具和相关技术、系统需求分析、系统模块设计、系统详细设计、总结等六章,详尽论述了从需求分析、系统分析、概要设计、详细设计、以及设计中的各方面的问题。
关键词:电子相册;路径;数据库;软件目录第1章绪论 (6)1.1课题背景和意义 (6)1.1.1课题背景 (6)1.1.2课题意义 (6)1.2 国内外发展现状 (6)1.3 论文主要工作 (7)1.4 论文章节安排 (7)第2章可行性和需求分析 (8)2.1 可行性分析 (8)2.1.1技术可行性 (8)2.1.2经济可行性 (8)2.1.3政策可行性 (8)2.2 用户分类及功能说明 (8)2.2.2 系统功能模块 (8)2.2.3功能描述 (9)2.3 系统层次方框图 (5)2.4 DFD和DD (6)第3章系统设计 (9)3.1 E-R图 (9)3.2 用例图 (11)3.2.1用例描述 (11)3.3 活动图 (172)第4章系统实现 (15)4.1 前台 (15)4.1.1打开照片模块 (15)4.1.2加入相册 (16)4.1.3打开照片分类缩略图 (18)4.2 打包与安装 (240)第5章测试 (252)5.1 打开照片模块测试 (254)5.1.1测试用例 (25)5.1.2测试结果 (25)5.1.3结果分析 (25)5.2 加入相册模块测试 (25)5.2.1测试用例 (25)5.2.2测试结果 (25)5.2.3结果分析 (26)5.3 查找照片模块测试 (26)5.3.1测试用例 (26)5.3.2测试结果 (26)5.3.3结果分析 (27)5.4 查找照片模块测试 (27)5.4.1 测试用例 (27)5.4.2测试结果 (27)5.4.3结果分析 (28)第6章结束语 (29)6.1 总结 (29)6.1.1已完成系统功能 (29)6.1.2系统实用价值 (29)6.2 展望 (29)6.2.1未完成的系统功能 (29)6.2.2未来的工作 (29)参考文献 (30)第1章绪论1.1课题背景和意义1.1.1课题背景由于市场竞争的需要,交流方式的多样化,用户的可选择的方式也就不断增加,对于软件研发者,软件功能的多样化和完善才是竞争的资本。
由于信息交流的多样化,特别是电子信息技术的发展,同时,随着数据库技术,客户/服务器技术等的发展,使得电子相册系统的功能更加完善。
电子相册管理系统的特点是从相册管理的角度出发,通过数据库将几乎所有与之相关的数据统一管理起来,从而形成了集成的信息集。
电子相册管理系统较好的用户界面,信息共享,信息管理使得管理人员和用户使用更加的便捷,而且电子相册系统的可操作性非常强,针对不同教育程度的人群。
1.1.2课题意义电子相册系统容纳的信息量非常大,主要通过文字和图片等方式展示出来,针对当前信息交流和管理类型的软件较多的原因,电子相册系统通过简单的几个功能模块就实现了用户的相册更新、管理管理等功能。
且在不同的功能模块中,分工明确,不同的功能模块通过控件联系起来。
从而使得用户之间的交流更加的多样化。
1.2 国内外发展现状相册在很早以前就开始有,原来是以纸质照片的形式存在的,后来随着时代的发展,科技的进步,旅游业的发展,照片越来越多,还有电脑的普及,传统的相册在使用人工进行管理,存在工作量大,各种多而复杂的文件信息占用大量地方,相册不方便携带,不易保管,容易丢失,翻看是不方便等等问题。
随着科技的进步,电脑时代的来临,加速了电子相册的产生与进步,在网络上,电子相册发展迅速,很多网站,博客都需要电子相册的功能,而随着电脑的普及使用,人们生活质量的提高,越来越多的人选择旅游,此时会产生大量的照片,对相册的需求都有了更高的需求,这就要求传统的相册能够实现计算机化,让人们能够方便快捷共享式的浏览照片。
1.3 论文主要工作介绍课题的背景和意义,介绍可行性分析,介绍系统设计,介绍系统实现,介绍软件测试内容,还有总结。
1.4 论文章节安排第一章介绍课题的背景和意义,第二章介绍可行性分析,第三章介绍系统设计,第四章介绍系统实现,第五章介绍软件测试内容,第六章总结。
第2章可行性和需求分析2.1 可行性分析2.1.1技术可行性本人熟悉掌握了C#语言,并且熟悉Microsoft visual Studio2013和SQL server的使用。
2.1.2经济可行性本软件属于小型软件,对于经费的开支并不大,主要为硬件设备及安全维护的支出,因此无需再投入资金购买其它设施。
2.1.3政策可行性本系统是根据电子相册管理的实际工作情况开发研制的,是通过大量的调研得出的,系统的软件设计是我独立完成的,无抄袭的他人软件产品的行为,也不存在盗版侵权的问题,是完全合法的软件。
本系统的开发是我自己开发出来的,没有违反中华人民共和国的任何法律条款,使用者可以放心使用,因此法律上是有保障的。
2.2 用户分类及功能说明2.2.1 用户分类系统中有普通用户,管理员,本软件产品的最终用户来源广泛,相同之处则是为了增进与他人之间的交流,管理人员则可以随时更新软件的项目,以及查询和维护信息。
本软件面向大众,用户使用过程中的操作也不复杂。
2.2.2 系统功能模块1)登录模块2)用户注册模块3)管理员信息管理模块4)用户信息管理模块5)系统设置管理模块6) 其他系统接口2.2.3功能描述下面详细描述一下各个功能模块:1)登录模块仅限于已注册用户和管理人员进行操作。
该模块主要是用于用户登录,用户和管理人员输入用户名和正确的密码即可进入对应的界面。
该界面的注册控件可转到注册功能,若用户长期未使用已注册帐号(五个月以内未曾使用系统将自动注销)、为注册用户以及用户名或者密码遗失的用户,点击注册控件进入注册模块。
2)用户注册模块仅限于用户长期未使用已注册帐号(五个月以内未曾使用系统将自动注销)、为注册用户以及用户名或者密码遗失的用户。
在注册过程中,即将注册的用户必须需要根据要求填写用户名、密码、确认密码、注册邮箱等,在填写过程中系统会有对应的提示,*为必填,对于其他比如说性别、出生年月等信息为可填,注册成功后将进入个人信息模块。
3) 管理员信息管理模块仅限于管理人员进行操作。
管理人员通过登录模块输入管理员登录帐号,进入管理员信息管理模块,该模块里面,管理人员能够通过输入查找功能,进行查询数据库中所有用户的个人资料,而且,管理员还能对所有用户的资料进行修改,包括文字和图片信息。
4)用户信息管理模块仅限于已注册用户和管理人员进行操作。
用户通过登录功能模块输入正确的用户名和密码进入用户信息模块,用户信息管理模块仅仅是个人信息,不包括其他用户的信息,所以,别的用户不能够修改此用户的任何信息,用户自身可以对个人的信息进行修改。
在此模块,用户还能够对用户的信息进行不同的展示,例如图片的展示,形态和大小呈现多样化。
5)系统设置管理模块仅限于已注册用户和管理人员进行操作。
管理员和已注册用户能够根据不同的需要修改系统中的某些设置。
2.3 系统层次方框图图2.1 系统层次方框图2.4 DFD和DD图2.2 注册数据流图图2.3 用户登录数据流图图2.4管理员信息管理数据流图图2.5总的数据流程图表2.3 数据存储条目第3章系统设计3.1 E-R图图3.1 E-R图3.2 用例图图3.2 用例图3.2.1用例描述下面给出各个部分用例的详细描述:(1)登录用例的描述用例名称:登录参与的执行者:注册用户和管理员前置条件:登录的用户名和密码完全正确事件流:当进入登录界面时用例开始,输入用户名和密码,如果用户名和密码不正确时弹出对话框“用户名或密码不正确”,回到第一步,否则继续。
用例结束。
后置条件:用户进入个人信息界面,管理员进入用户信息界面。
(2)注册用例的描述用例名称:注册参与的执行者:未注册用户、用户名或者密码遗失的用户、账号长时间未登录的用户前置条件:系统中不存在此用户的任何信息事件流:当点击注册控件时用例开始,输入用户信息(用户名、密码、注册邮箱等),如果用户名已经存在,则回到第二步,否则继续,在后台数据库中添加新的用户信息,进入该用户个人资料界面,用例结束后置条件:在后台数据库中添加了一个新用户,并为该用户存储相应的信息。
3.3 活动图图3.3 用户修改信息的活动图图3.4 用户注册的活动图图3.5 用户密码的活动图第4章系统实现4.1 前台4.1.1打开照片模块图4.1 打开照片模块图try{OpenFileDialog of = new OpenFileDialog();of.ShowDialog();pictureBox4.Image = Image.FromFile(of.FileName);insertPath = of.FileName;textBox7.Text = DateTime.Today.ToString();insertButton=1;}catch{MessageBox.Show("图片打开失败,请重新打开!");}4.1.2加入相册图4.2 加入相册模块图private void skinButton17_Click(object sender, EventArgs e){try{//获取文件格式string path = Environment.CurrentDirectory + "//照片//动物//猫0.jpg";if (insertPath != null)path = insertPath;System.IO.FileStream fs = new System.IO.FileStream(path, System.IO.FileMode.Open, System.IO.FileAccess.Read);System.IO.BinaryReader r = new System.IO.BinaryReader(fs);string bx = " ";byte buffer;try{buffer = r.ReadByte();bx = buffer.ToString();buffer = r.ReadByte();bx += buffer.ToString();}catch (Exception exc){MessageBox.Show(exc.Message);}r.Close();fs.Close();string insertFileName = null;if (textBox6.Text == "")insertFileName = "默认" + findMaxId().ToString();elseinsertFileName = textBox6.Text;if (1 == insertButton){if (bx.Equals("255216")){if (textBox9.Text == ""){File.Copy(insertPath, Environment.CurrentDirectory + "//照片//默认\\" + insertFileName + ".jpg");insertPath = "//照片//默认\\" + insertFileName + ".jpg";}else if (textBox9.Text.Equals("汽车")){File.Copy(insertPath, Environment.CurrentDirectory + "//照片//汽车\\" + insertFileName + ".jpg");insertPath = "//照片//汽车\\" + insertFileName + ".jpg";}else if (textBox9.Text.Equals("风景")){File.Copy(insertPath, Environment.CurrentDirectory + "//照片//风景\\" + insertFileName + ".jpg");insertPath = "//照片//风景\\" + insertFileName + ".jpg";}else if (textBox9.Text.Equals("人物")){File.Copy(insertPath, Environment.CurrentDirectory + "//照片//人物\\" + insertFileName + ".jpg");insertPath = "//照片//人物\\" + insertFileName + ".jpg";}else if (textBox9.Text.Equals("动物")){File.Copy(insertPath, Environment.CurrentDirectory + "//照片//动物\\" + insertFileName + ".jpg");insertPath = "//照片//动物\\" + insertFileName + ".jpg";}else if (textBox9.Text.Equals("卡通")){File.Copy(insertPath, Environment.CurrentDirectory + "//照片//卡通\\" + insertFileName + ".jpg");insertPath = "//照片//卡通\\" + insertFileName + ".jpg";}}else if (bx.Equals("13780")){if (textBox9.Text == ""){File.Copy(insertPath, Environment.CurrentDirectory + "//照片//默认\\" + insertFileName + ".png");insertPath = "//照片//默认\\" + insertFileName + ".png";}else if (textBox9.Text.Equals("汽车")){File.Copy(insertPath, Environment.CurrentDirectory + "//照片//汽车\\" + insertFileName + ".png");insertPath = "//照片//汽车\\" + insertFileName + ".png";}else if (textBox9.Text.Equals("风景")){File.Copy(insertPath, Environment.CurrentDirectory + "//照片//风景\\" + insertFileName + ".png");insertPath = "//照片//风景\\" + insertFileName + ".png";}else if (textBox9.Text.Equals("人物")){File.Copy(insertPath, Environment.CurrentDirectory + "//照片//人物\\" + insertFileName + ".png");insertPath = "//照片//人物\\" + insertFileName + ".png";}else if (textBox9.Text.Equals("动物")){File.Copy(insertPath, Environment.CurrentDirectory + "//照片//动物\\" + insertFileName + ".png");insertPath = "//照片//动物\\" + insertFileName + ".png";}else if (textBox9.Text.Equals("卡通")){File.Copy(insertPath, Environment.CurrentDirectory + "//照片//卡通\\" + insertFileName + ".png");insertPath = "//照片//卡通\\" + insertFileName + ".png";}}insert("insert into photo values('" + findMaxId() + "','" + textBox6.Text + "','" + insertPath + "','" + DateTime.Today.ToString() + "','" + textBox8.Text + "','" + textBox9.Text + "')");deletePath = insertPath;MessageBox.Show(deletePath);}textBox6.Text = textBox7.Text = textBox8.Text = textBox9.Text = "";}catch{MessageBox.Show("照片添加失败!");}4.1.3打开照片分类缩略图图4.3 照片分类模块图private void showBigPicture(){if (picture[0] != null) this.picture[0].Click += new System.EventHandler(this.picture0_Click); }private void picture0_Click(object sender, EventArgs e){deletePath = pictureBox4.ImageLocation = picture[0].ImageLocation;}4.2 打包与安装图4.4 打包与安装图如图4.4所示,双击Release.zip解压,双击Demo.exe打开程序,即可运行。