院毕业论文
图3 学生注册
4.6找回密码
很多情况下,学生会将密码遗忘或丢失,这样就无法登录自己的学生帐号,为了避免造成不必要的损失,笔者设计了找回密码的功能。
找回密码主要分为三个页面来完成。页面一:输入已注册的学生证号;页面二:系统会根据输入学生证号把相应的密码问题列出来,然后输入问题答案;页面三,如果问题答案正确,则成功找回密码。忘记密码三个页面的设计结果分别
图4 忘记密码1
图5 忘记密码2
16
院毕业论文
图6 忘记密码3
实现密码找回功能的代码很简单,主要是判断输入的学生证号是否存在,以及该学生的密码提示问题和密码答案是否正确。
在页面一中,需要输入学生证号,系统会自动核对其是否存在,实现代码如下:
Datacon dataconn = new Datacon();
protected void Button1_Click(object sender, EventArgs e) {
SqlConnection con = dataconn.getcon();
con.Open();
SqlCommand com = new SqlCommand(\txtStuID.Text + \
int count = Convert.ToInt32(com.ExecuteScalar()); if (count > 0)
{
Session[\
Page.Response.Redirect(\ } else {
Response.Write(\无此学生编号、或输入有误');location='javascript:history.go(-1)'\
return; }
con.Close(); }
单击“确定”按钮,如该学生证号存在,则进入页面二,此处需要输入该学生的密码问题和答案,如核对无误,直接进入页面三,并直接在页面三中显示出该学生的密码,实现此功能的关键代码如下:
Datacon dataconn = new Datacon();
protected void Button1_Click(object sender, EventArgs e) {
SqlConnection con = dataconn.getcon();
con.Open();
SqlCommand mycom = new SqlCommand(\ + txtAnsPwd.Text + \ int count = Convert.ToInt32(mycom.ExecuteScalar()); if (count > 0)
{
17
院毕业论文
Page.Response.Redirect(\ } else {
Response.Write(\提示问题答案输入有误!');location='javascript:history.go(-1)'\
return; }
con.Close(); }
18
院毕业论文
第六章 结论
经过三个多月的紧张学习和开发,在指导老师的带领下,我终于完成了了毕业设计。这不仅是对专业知识的考核,更是一种近一步的学习和运用。对我们的学习能力的提高是很有帮助的,而且对于程序员来说,开发能得到实际应用的系统,可以积累相当丰富的实战经验。我们以后的工作积累了一定的开发经验。
最初,就像上面所说的自己平时很少关注系统设计方面的知识,所以一开始感觉摸不着头绪,根本不知道从何下手。所以只有匆匆忙忙地从图书管理借来大量关于系统设计方面的书籍,希望通过参阅各种关于系统设计的书籍充分了解系统建设的基本流程、总体布局设计以及系统开发前所需的一些准备工作,做到心中有数。然而,由于实在是经验有限,虽然书本上介绍了许多这方面的知识和操作方法,但是毕竟还是限于理论方面的,所以理解起来比较困难。幸好有一个朋友在这方面比较擅长,所以就向他请教了一些关于这方面的实际操作流程。经过几次交谈,我才渐渐的有点概念,至少知道整个设计流程和具体实际操作。所以,接下来我就按先前了解的那样,先去详细地了解了学校对于建设该系统的总体需求和目的,比如首页需要设计成怎样的形式,一共需要多少个内容版块,需要有哪些功能模块,主页下面有几层子页面,以及哪些地方需要设计成动态模式等等各方面的信息。由于这方面的知识还是不够成熟,所以中间还是没有充分了解用户的需求,后来我再细心地浏览了大量的相关系统的系统的总体布局和设计风格,充分借鉴它们的设计和内容,接着再回过头来根据实际情况去调查,这样经过几次反复的交流,才开始对本系统进行一个总体布局和页面设计。
首先,我把所有内容和功能模块都罗列出来,划分成几大模块,接着对此作了一定的版面布局设计。至于版面设计工作,由于自己在这方面还有一定的基础,再加上浏览了大量相应的系统以后,基本上有了一定的概念了。比如先是根据本系统特点把整个系统页面的主色调设为天蓝色,而在每个页面的头部分设计一个动态图片,以示蓬勃向上之意,接着把各内容模块和功能模块按照一定的布局安排好,并不时地考虑到整个页面布局的合理性。这一过程我不断规划不断和学校人员交流修改,一共经过了十多次的修改最后才确定下来如今的系统格局。等把各内容版块和功能模块布局好了之后,我又对每一块内容的色调和框架进行了图
19
院毕业论文
片和动画的设计,同样这一过程经过反复的讨论和修改才最后定稿。这一过程整整花了好几天时间,其中参考了大量的书籍和相应的系统,可谓精益求精。
然而,到进一步对系统的各个功能模块的分析和设计时,我又进入到先前的尴尬境地了。因为以前做系统都有一定的步骤和模式可供参考,而至于系统的一些功能模块分析无从下手。回头只好又狂查资料,并且只好根据自己所理解的东西进行一步步摸索。至于其他一些诸如数据库设计等方面的分析,则完全参照系统设计的步骤和模式来,并根据以前所学的知识来作详细的分析。
虽然我在需求分析阶段花了很大的力气,但是在后来的实际设计当中还是发现了很多问题。由于对整个系统的设计理解不够深刻,加上需求分析做的不够深入、不够透彻就急于进入系统设计阶段,才导致了后来设计过程中出现的大量漏洞,不得不回头来重新分析和弥补漏洞。比如起先认为很好的整个页面布局,然而由于没有考虑到设计软件等各方面的原因,使得原来设计好的布局不得不重新调整,有时又会由于忘了某个功能忘了放进去而又要重新调整,这样弄来弄去以致浪费了大量的时间。另外,在涉及到各功能模块的链接时,往往由于事先没有一个总体的安排和考虑,以至于部分功能链接过程中出现了混乱的状态。还有,由于自己平时在做数据库设计时不是非常细心,也没有做大量的数据分析,以至导致了后来在系统调试时出现了数据的混乱和错误。所以,经过这次的设计,我更加深刻地认识到需求分析的重要性,它对于下阶段工作开展的顺利与否具有决定性的意义。
20