资源描述
在线通讯录设计报告-基于WEB
———————————————————————————————— 作者:
———————————————————————————————— 日期:
16
个人收集整理 勿做商业用途
《基于WEB的程序设计》
-—---——在线通讯录设计报告
一 、设计分析
在线通讯录系统是为了实现登陆、显示、添加、删除、修改、查找成员功能的系统.为了保护个人信息,每个人只可以通过密码验证来修改维护个人信息,否则只能浏览个人信息。同时自己也可以查看别人的信息,方便联系
二 、程序流程及各模块的功能
登陆界面是通过与数据库中的数据循环比较,搜索符合要求的用户,查找不到时就视为账户不存在或者密码不正确.添加、删除、查找、修改都是通过与数据库中的数据记录相连实现的。
1、登陆界面实现用户登陆,没有账号和密码的不允许登陆。
2、登陆成功界面,可以浏览其他人的信息,方便联系。也可以修改自己的信息,还可以添加新的记录。
3、添加记录界面,可以输入详细的数据信息。
4、查找界面.当记录太多时,寻找一个人的记录很费时间。这是用查找功能,很方便的就能要找的信息.
5、修改数据,这项是受到保护的.只有正确输入登陆密码才能修改个人信息。
6、删除记录。这里只要点击删除就能删除,要慎重删除!
三 、源程序
1、连接数据库代码:
<%
’这是数据库连接文件,专门用来连接数据库。在其他页面中可以包含本页面,就相当于将如下语句写到别的页面中一样.
’以下连接数据库,建立一个Connection对象实例conn
Dim conn,strConn
Set conn=Server。CreateObject(”ADODB.Connection”)
strConn="Provider=Microsoft.Jet。OLEDB.4.0;Data Source=" & Server.MapPath("txl.mdb”)
conn.Open strConn
%>
2、登陆界面代码:
<html >
<head>
〈meta http—equiv="Content-Type" content=”text/html; charset=gb2312” /〉
<title>登陆界面</title>
</head>
〈body background=”tp/go.jpg” topmargin=”180”>
〈form name="frmgo” method=”post” action=”goin。asp">
<table border=”1” width="15%” align="center" 〉
〈caption align=”center" valign=”top”>登陆界面〈/caption>
<tr><td bgcolor=”#0066FF">姓名</td〉<td bgcolor="#FFCCFF"〉〈input type=”text” name=”txtname" size="20”〉〈/td></tr>
<tr>〈td bgcolor="#0066FF">密码〈/td><td bgcolor=”#FFCCFF">〈input type=”password” name="txtpw" size=”20"〉</td></tr〉
〈/table>
〈p align="center”〉<input type=”submit" name=”btnsubmit" value=" 登 陆 "〉
〈input type="reset” value=” 重 置 ” name=”B4”>
</p></form〉
〈/body>
</html〉
3、登陆界面姓名和密码验证代码:
〈!——#Include File=”odbc_connection。asp”-->
〈html〉
<head>
〈meta http—equiv=”Content-Type" content=”text/html; charset=gb2312" /〉
<title〉密码错误重新登陆〈/title>
〈/head>
〈body〉
〈%
username=trim(request。form(”txtname"))
password=trim(request。form(”txtpw”))
dim rs,strsql
strsql=”select * from txl”
set rs=conn。execute(strsql) ’返回整个数据表
do while not rs.eof
if username=rs("strname") and password=rs("pw”) then
response。redirect ”index。asp”
exit do
else
response.write(”〈script〉alert(’;资料输入错误,请返回重新输入!';);history.go(—1)</script>")
end if
rs.movenext
loop
rs。close
set rs=nothing
set conn=nothing
%〉
〈/body>
</html>
4、登陆成功界面代码:
〈!—-#Include File=”odbc_connection.asp"-—>
〈html >
<head〉
〈meta http—equiv="Content-Type" content="text/html; charset=gb2312” />
〈title〉在线通讯录</title>
</head>
〈body background="tp/5。jpg">
<h1 align="center"><font color=”#0066FF”>我的在线通讯录</font〉</h1〉
<%
dim rs,strsql
strsql=”select * from txl”
set rs=conn。execute(strsql) '返回整个数据表
%>
<a href=”insert.asp">添加记录</a> <a href=”find。asp"〉查找〈/a〉
<table border="1" width=”100%" align=”center">
<tr bgcolor=”#FFCC33”>
〈th>姓名</th〉
〈th>性别</th〉
<th>年龄〈/th>
<th>电话〈/th〉
〈th>E—mail〈/th〉
〈th〉简介〈/th>
〈th〉添加日期</th>
〈th〉删除</th〉
〈th〉修改</th>
〈/tr〉
〈%
do while not rs。eof '只要不是结尾就执行循环
%〉
<tr bgcolor="#FF99FF”>
<td〉〈%=rs(”strname") %〉</td>
〈td〉〈%=rs(”strsex")%〉〈/td>
〈td><%=rs("intage")%>〈/td〉
<td〉<%=rs("strtel")%>〈/td>
〈td〉〈a href=”mailto:〈%=rs("stremail")%〉"〉〈%=rs(”stremail")%〉〈/a></td〉
〈td〉〈%=rs(”strintro”)%〉</td〉
〈td〉<%=rs("dtmsubmit”)%></td〉
<td〉<a href=”delete.asp?ID=<%=rs("ID")%〉”〉删除</a〉</td〉
〈td〉〈a href=”pwcheck.asp?ID=〈%=rs("ID")%〉&pw=〈%=rs("pw”)%〉"〉修改信息〈/a></td〉
</tr>
〈%
rs。movenext
loop
%〉
〈/table〉
〈/body>
〈/html〉
5、添加记录代码:
<!--#Include File=”odbc_connection.asp"—-〉
<html 〉
<head〉
<meta http-equiv="Content—Type” content=”text/html; charset=gb2312” />
<title>添加记录〈/title>
</head>
〈body background="tp/2。jpg”〉
<h2 align=”center"〉添加新录〈/h2〉
<form name="frminsert” method="post” action="">
〈p align="center">〈font color=”#FF0033”〉其中带*号的必须填写</font>
〈table border="1” width=”30%" align="center"〉
<tr>
<td〉姓名</td〉<td〉〈input type="text” name="txtname" size=”20"〉*〈/td>
</tr〉
〈tr>
<td〉密码〈/td〉<td>〈input type="password" name="txtpw" size="20"〉*〈/td>
〈/tr〉
<tr>
<td〉性别〈/td〉〈td〉〈input type="radio” name="rdosex" value=”男”>男〈input type=”radio” name="rdosex” value="女"〉女〈/td>
</tr〉
<tr>
<td>年龄</td>〈td><input type="text” name=”txtage” size="4”>〈/td>
〈/tr>
<tr〉
〈td>电话〈/td〉〈td〉〈input type="text” name="txttel” size="50”>〈/td〉
</tr>
〈tr>
〈td〉E—mail</td>〈td〉〈input type=”text” name=”txtemail” size=”50"〉</td>
</tr〉
〈tr〉
〈td〉个人简介〈/td〉<td〉〈textarea name="txtintro" rows=”5” cols=”100”〉〈/textarea〉</td〉
〈/tr〉
〈/table〉
<p align=”center"〉<input name=”tj" type="image” src=”tp/tijiao。jpg” border="0">
〈input type="reset” name="btnReset” value="取消” >
</form〉
〈%
if request。Form("txtname")〈>”" and request。Form("txtpw”)〈〉"" then
dim strname,strsex,intage,strtel,stremail,strintro,password
strname=request.Form("txtname”)
strsex=request。Form("rdosex”)
intage=request.Form("txtage")
strtel=request。Form(”txttel”)
stremail=request。Form(”txtemail")
strintro=request.Form(”txtintro”)
pw=request.Form(”txtpw”)
dim strsql
strsql="insert into txl(strname,strsex,intage,strtel,stremail,strintro,dtmsubmit,pw) values(’”& strname & "’,'” & strsex & ”'," & intage & ”,'” & strtel & ”','” & stremail & ”','" & strintro & "’,#” & date() & "#,’” & pw & "')"
conn。execute(strsql)
’添加成功后返回首页
response。Redirect”index.asp”
end if
%>
〈/body〉
〈/html〉
6、查找记录代码:
<!--#Include File="odbc_connection.asp"—-〉
〈html >
〈head〉
〈meta http-equiv=”Content-Type" content=”text/html; charset=gb2312" /〉
<title>查找信息〈/title>
〈/head>
<body background=”tp/1。jpg">
<h2 align="center”〉查找记录信息</h2〉
〈form name=”frmsearch” method="post" action=”"〉
请输入要查找的姓名:〈input type=”text" name=”txtname” /〉
<input type="submit” name=”btnsubmit” value="确 定" /〉
</form>
<%
if request.Form(”txtname")〈>”” then
dim rs,strsql
strsql=”select * from txl where strname like '%” & request。Form("txtname”) & "%’”
set rs=conn.execute(strsql)
%>
<table border=”1" width=”100%” align="center"〉
<tr bgcolor="#FFCC33">
〈th>姓名〈/th>
<th〉性别</th>
〈th>年龄</th〉
〈th>电话</th〉
〈th〉E—mail</th>
〈th〉简介</th>
<th>添加日期〈/th>
〈/tr>
〈% do while not rs。eof %〉
<tr bgcolor="#FF99FF"〉
<td〉〈%=rs(”strname")%>〈/td〉
<td〉<%=rs(”strsex")%>〈/td>
<td>〈%=rs(”intage")%>〈/td>
<td><%=rs(”strtel")%〉〈/td〉
<td>〈a href="mailto:〈%=rs("stremail")%>”〉〈%=rs(”stremail")%>〈/a>〈/td>
〈td><%=rs(”strintro”)%></td>
〈td〉〈%=rs("dtmsubmit”)%〉〈/td〉
</tr〉
〈%
rs.movenext
loop
%〉
〈/table>
<% end if %>
</body>
</html〉
7、修改记录信息代码:
A、密码验证:
<html 〉
〈head〉
<meta http—equiv=”Content-Type" content=”text/html; charset=gb2312” /〉
〈title〉密码验证〈/title>
〈/head〉
<body background=”tp/7.jpg"〉
<p>〈font color="#FF0033”〉!!!为了保护个人信息请输入正确修改密码才能进行修改信息!!!</font〉
〈form name=”mm” method=”post” action=””>
〈p〉密码:<input type="password" name="pw2" size="20”〉
〈input name=”tj” type=”image" src=”tp/tijiao.jpg” border=”0">
</form>
<%
session(”ID”)=request.QueryString("ID")
if request。QueryString(”pw”)〈〉request。Form(”pw2”) then
response.Write "<p><font color='#ff0033’>对不起,输入密码不正确,您没有修改权限!!!</font> 〈a href=’index.asp'〉〈img src='tp/back。jpg’></a>"
else
response.Write ”〈p>〈a href='update_form。asp’〉密码正确,可以修改</a〉"
end if
%〉
</body>
</html〉
B、密码验证成功,读取数据并修改:
<!-—#Include File="odbc_connection.asp”——〉
〈html 〉
<head>
<meta http-equiv=”Content-Type" content=”text/html; charset=gb2312" /〉
<title>个人信息修改</title〉
</head>
<body background="tp/6.jpg"〉
〈h2 align="center"〉更新个人信息〈/h2>
<%
dim strsql,rs
strsql=”select * from txl where ID=” & session("ID”)
set rs=conn.execute(strsql)
’下面将符合要求的记录显示在表单里
%>
〈form name="frmupdate” method="post” action=”update.asp”〉
〈table border="1” width="40%" align=”center”〉
〈tr〉
<td〉姓名〈/td>〈td><input type="text" name=”txtname” size="20" value="〈%=rs("strname”)%>”〉*〈/td>
〈/tr>
〈tr〉
〈td>密码〈/td〉〈td>〈input type=”password" name=”txtpw” size=”20” value=”<%=rs(”pw”)%〉”>*〈/td>
〈/tr〉
〈tr>
〈td〉性别</td〉〈td〉<input type="radio” name="rdosex” value="男" 〈% if rs(”strsex”)="男” then response。write"checked" %〉>男
<input type="radio" name=”rdosex” value=”女” 〈% if rs("strsex")=”女” then response。write"checked" %>〉女</td〉
</tr>
<tr>
<td>年龄〈/td〉<td〉〈input type="text” name="txtage" size="4” value="<%=rs("intage")%〉"〉</td〉
</tr>
<tr>
<td>电话</td>〈td>〈input type="text" name="txttel” size=”40" value="<%=rs("strtel")%>”〉</td〉
〈/tr>
<tr>
<td>E_mail〈/td〉〈td〉〈input type="text” name=”txtemail” size=”50" value=”〈%=rs("stremail”)%>”〉〈/td〉
</tr〉
〈tr〉
<td〉个人简介〈/td>〈td〉〈textarea name="txtintro" rows="5” cols="100">〈%=rs("strintro”)%>〈/textarea></td>
〈/tr〉
</table>
〈p align="center”〉<input type=”hidden" name=”txtID” value="<%=rs(”ID")%〉”>〈input type="submit" name=”btnsubmit" value="确定”〉
</p>
</form>
〈/body>
〈/html〉
C、修改后输入插入数据库代码:
<!——#Include File=”odbc_connection。asp"—-〉
〈html >
<head〉
<meta http-equiv="Content-Type” content="text/html; charset=gb2312” /〉
〈title〉更新个人信息执行程序</title>
〈/head〉
〈body background="tp/11.jpg"〉
〈%
session.Abandon
if request。Form(”txtname”)〈>”” and request。Form("txtpw")〈>”” then
dim ID,strname,strsex,intage,strtel,stremail,strintro,pw
ID=request.Form("txtID")
strname=request.Form("txtname")
strsex=request。Form("rdosex”)
intage=request。Form("txtage")
strtel=request。Form("txttel")
stremail=request.Form(”txtemail")
strintro=request。Form(”txtintro”)
pw=request。Form(”txtpw”)
dim strsql
strsql=”update txl set strname=’”& strname & "’,strsex='" & strsex & "’,intage="& intage &”,strtel=’” & strtel &”',stremail='” & stremail & "',strintro='” & strintro &”',dtmsubmit=#” & date() & ”#,pw='” & pw & ”’where ID=” & ID
conn.execute(strsql)
response.Redirect ”index.asp”
else
response。Write ”姓名和密码必须填写”
response.Write ”〈a href='index。asp’>重新填写</a>"
end if
%>
〈/body>
〈/html〉
8、删除数据代码:
〈!——#Include File=”odbc_connection。asp"-->
〈%
dim strsql
strsql=”delete from txl where ID=” & request。QueryString(”ID")
conn。execute(strsql)
’删除完毕后返回首页
response。Redirect "index.asp"
%〉
四 、操作方法
本程序设计很人性化,期中有很多文字性的提示和帮助,很好操作。具体操作流程如下:登录——--—-查找、添加、修改(只能修改自己)—-——---退出。
五 、实验结果
程序设计完成后,对登录、查找、添加、修改等操作都进行了多次实验,都达到了预期的结果。测试图参考功能介绍的截图,这里就不再赘述了。
六 、设计体会
在线通讯录系统,实现的功能比较简单。要想做出复杂的通讯系统,还需要付出很多努力.程序设计要求设计员细心,考虑问题要周到。还需要探究问题的精神。通过这次课程设计,我明白了编写程序要求程序设计者有较强的思维和动手能力。还要熟悉常用的编程技巧和编程思想,不能只关心程序的运行结果,更要注重程序代码的结构,编程者更要有严谨地态度。还有通过设计过程中大量地查阅网络文章,对一些关键知识点逐个地了解并解决相关问题。
展开阅读全文