返回列表 发帖
我看一下,如果好,我也传一个上来。

TOP

我来个《毕业生信息发布系统》

前       言

随着计算机、通信及信息技术的发展和应用,人类进入信息化社会。计算机的应用越来越普遍。全世界已有一百多个国家和地区,成千上万的网络,数以亿计的用户连入internet。目前,许多人在需要查询信息时,首先想到的就是上网。internet正成为世界最大的公共资料信息库,它包含无数的信息资源,所有最新的信息都可以通过网络搜索获得。更重要的是,大部分信息都是免费的。在互联网上提供服务使人足不出户就可获得丰富的资讯,无可置疑,网站已成为最吸引人的也最有效的信息传递手段和方。

每年都有许多学生毕业,而要了解每个毕业生的具体信息靠人工去查找浪费很多的时间,建立一个毕业生信息发布系统是很有必要的,特别是用人单位招聘毕业生时,他可以很方便的在因特网上通过进入学校网站里的毕业生信息发布系统来查阅毕业生各方面的信息如:学过的课程及成绩,在校表现等等。这样既不用花很多的时间又能得到自己想要的信息。给用人单位和毕业生找工作都带来很大的方便。每个人都可以通过毕业生信息发布系统查询到毕业生的信息。

本次设计目标是构建毕业生信息发布系统。通过设计一个基于windows server 2000服务器的、采用php+mysql构架来完成毕业生查询模块的程序的设计。深入了解使用windows server 2000建设网站服务器的方法,学习mysql这一平台下数据库的运行调试过程,并熟练php的网络编程知识。通过本次设计全面掌握交互交网络程序的开发全过程。由于本组成员设计水平有限还有待进一步的扩充与提高。

TOP

论  文  目  录
第一章  总 体 设 计
1.1 发布系统的功能及目录结构分析
1.2 开发人员的分工与合作
1.3 开发流程
第二章  服务器架设
2.1  操作系统的选择与安装
2.2  web服务的添加与相关设置
2.3  mysql数据库环境与php环境安装与设置
2.4  发布系统结构及模型图
第三章  具体设计
4.1数据形成
4.2毕业生查询设计
4.3添加毕业生设计
4.4管理毕业生设计
4.5班主任管理设计
功能测试与分析  
结束语

TOP

第一章        毕业生信息发布系统查询总体设计
1.1  毕业生信息发布系统的功能及目录结构分析
对于毕业生信息发布系统是一个有利于学校管理毕业生。毕业生信息发布系统提供毕业生的个人详细资料如:班级、专业、成绩等等。通过网络平台进入毕业生信息发布系统每个人都可以查到你想要了解毕业生的资料。这给毕业生找工作也提供了很大的帮助,用人单位提供很大的帮助。
对于毕业生信息发布系统的目录结构,我们按以下设计,首先在网站的根目录建立一个名为毕业生信息查询取名为:bysxxfu子目录,将二级网页(例如学生查询模块用户界面,网页取名为byscx.htm)和相关的php程序文件(例如学生查询模块的后台程序,取名为byscx.php)存放于bysxxfu目录,其它页面及程序类似。再目录下建立一个image的目录存放校内信息服务所有页面的图片。完成后如图1.1所示。
               
图1.1  毕业生信息发布系统发布系统目录结构图
1.2 开发人员的分工与合作
赖明霞  王冬梅:负责总体设计、管理班主任模块
罗文华  刘红英:负责相关数据的导入
黄春平  谢晓燕:负责毕业生信息查询
侯奎峰  付蓉:  负责服务器架设及添加毕业生
胡炜    陈秀文:负责管理毕业生
1.3 开发流程
1.初始  主要是收集毕业生的信息,包括各专业的班主任信息。
2. 概念开发  设计小组根据收集的信息,开始构思,以构思草图的形式呈现,草图要有整个毕业生的结构,最终确定整个查询的功能的风格、布局和结构等相关内容。
3.内容综合 当方案决定下来之后,接下来就是制作一些初始的图样来形成界面的风格。各模块功能的具体设计:数据的形成、界面的制作,后台程序的设计。
4. 测试  在提交之前,要彻底测试每个模块,看它的功能是否能实现。用输入数据进行验证。发现有误这后在作想应的修改。
5.交付使用  当测试没有错误码后,由用户验收完就可交会使用。

TOP

第二章  服务器的架设
我们将相关的内容上传至互联网上,各地网友可以查询浏览相关信息,他们的数据查询量不会太大,主要是浏览学校的概况,从网站上更全面、更形象地了解学校的各方面的情况,交互式内容主要集中在,毕业生查询、**高考查询和校友通讯录;校内的管理人员、教师和在校生,浏览学校概况,得到反馈意见和查询相关信息(例如学生查询其学习成绩、老师查询某门课程的教学计划等)可以想象的出这一方面的数据量是比较大的。若不在校内架设一镜象web服务器,会使得外部虚拟服务器负荷过大,影响外地网友查询浏览,还会使内部用户的使用效率降低。考虑内部服务器与外部虚拟服务器为一镜象,所以它支持的平台和数据库环境应尽量一致。以下将对本次设计中的相关细节作一详细描述。
2.1  操作系统的选择及安装
   对于服务器操作平台的选择,主要从安全性、兼容性、性能价格比、可扩展性等方面考虑。本次使用基于windows 2000 server的iis 5.0,但它的价格比校便宜,适合一些实验及小的网络中使用。
windows 2000 server 中的许多概念与windows nt server相同,当然在原来的基础上扩展很多,其中最明显的是对用户的管理采用活动目录的管理方式,使管理更安全、方便。
iis是internet信息服务(internet infomation server)的缩写。它是一种web服务,主要包括www服务器、ftp服务器等。它使得在intranet(局域网)或internet(因特网)上发布信息成了一件很容易的事。windows 2000 server上提供的为iis 5.0。
由于它从各方面都可以满足,网站开发的要求,加之本设计小组windows 2000操作平台比较熟悉,所以此开发是轻而易举的事。
2.2  web服务的添加与相关设置
  一、iis概述
  在本文中,欲设置ftp,为了方便起见,可先定下想要实现的目标:
  ⑴我已在dns中将域名“ftp.abc.com”指向了ip地址“191.168.0.1”,要求输入相应格式的域名(或ip地址)就可登录到“d:\myweb”目录下使用ftp相关服务。
  ⑵当然,此域名也可和www站点中的任意一个共用同一个ip地址,因为它们都具有不同的默认端口号——www的默认端口号是80,ftp的默认端口号为21。
  二、“ftp.abc.com”的设置
  1、打开“默认ftp站点”属性窗口:选“默认ftp站点→右键→属性”即可。
  2、设置“ftp站点”:在“ip地址”处选“192.168.0.1”,端口号保持默认值“21”不变。如下图:

  3、设置“消息”:在“欢迎”框中输入登录成功后的欢迎信息,“退出”中为退出信息。
  4、设置“主目录”:在“本地路径”中按“浏览”按钮选择目标目录“e:\myweb”。如下图:

  5、设置“安全帐号”:默认的,匿名用户(anonymous)被允许登录,如果有必要,此处可选拒绝其登录以增加安全性;或增加其他用于管理此ftp服务器的用户名(默认的为“administator”)。
  6、设置“目录安全性”:此处可以设置只被允许或只被拒绝登录此ftp服务器的的计算机的ip地址。
  7、如需要,也可在“默认ftp站点”处单击右键选“新建”来新建ftp的虚拟目录。
  三、“ftp.abc.com”的测试
  1、在浏览器中登录:格式为“ftp://ftp.abc.com”或“ftp://用户名@ftp.abc.com”。如果匿名用户被允许登录,则第一种格式就会使用匿名登录的方式;如果匿名不被允许,则会弹出选项窗口,供输入用户名和密码。第二种格式可以直接指定用某个用户名进行登录。
  2、用ftp客户端软件登录:如下图为在cuteftp中的设置:
  3、如果“主目录”下有与用户同名的“虚拟目录”或“实际目录”,则该用户会直接登录到其同名目录中。
2.3  mysql数据库环境和php环境的安装与设置
  php是一种易于学习和使用的服务器端脚本语言,只需要很少的编程知识你就能使用php建立一个真正交互的web站点。php为超文本预处理器的缩写(php: hypertext preprocessor)。php是完全免费的,不用花钱,你可以从php官方站点(http://www.php.net)自由下载。php遵守gnu公共许可(gpl),在这一许可下诞生了许多流行的软件诸如linux和emacs。你可以不受限制的获得源码,甚至可以从中加进你自己需要的特色。php在大多数unix平台,gun/linux和微软windows平台上均可以运行。怎样在windows环境的pc机器或unix机器上安装php的资料可以在php官方站点上找到。它的安装过程比较简单。
本次设计采用的php4和mysql的软件包是php-4.0.1pl2-win32.zip和mysql-3.23.19-beta-win.zip。
一、mysql的安装设置
1.用winzip8.0打开软件包进行完全安装,默认安装路径为:c:\mysql;
  2.安装完成后,打开“开始”按钮中的“运行”,输入命令:c:\mysql\bin\mysqld-nt.exe --install,并执行;  
3.打开“开始”按钮下的“程序”→“管理工具”→“服务”,找到“mysql”服务并启动它;
  4.mysql安装完毕后,重启win2000adanced server。另外可以打开c:\mysql\bin\winmysqladmin.exe,在第一次用它时,需要建立管理员名及密码,设置为root。关闭它后,程序自动在状态行下建立一个“红绿灯”的小图标,点击这个图标,可以管理服务上的mysql数据库。   
  二、php的安装设置
1.        将软件包先用winzip解压到c:\php4下,再将目录下的所有dll文件拷到c;\winnt\system32下,不要覆盖已有的dll文件;
2.        将目录下的php.exe和php.ini-dist两个文件拷到c:\winnt下;
3.将c:\winnt\php.ini-dist改名为php.ini,并打开它,找到;windows extensions,将extension=php_calendar.dll、extension=php_zlib.dll、extension=php_ldap.dll前的“;”去掉,关闭该文件。
4.打开“开始”按钮下的“程序”→“管理工具”→“internet服务管理器”,选中“默认web站点”,打开它的“属性”窗口。在“web站点”页下,改变“ip地址”:“全部未分配”为“(服务器的ip地址,例如:192.168.0.1)”;“tcp端口”为“80”。   
5.选中“主目录”页,单击“应用程序设置”下的“配置”按钮后,在新窗口下单击“添加”按钮;在“可执行文件”中输入“c:\winnt\php.exe     %s %s”,在“扩展名”中输入“.php”,点击“确定”。
6.选中“isapi筛选器”页,单击“添加”按钮;在“筛选器名称”中输入“php”,在“可执行文件”中输入“c:\winnt\system32\php4isapi.dll”,点击“确定”。
7.选中“文档”页,单击“添加”按钮;在“默认文档名”中输入“index.php”,点击“确定”,并将其提高到最高级。还可以添加常用的php文件名,如:“default.html”、“index.php3”等。
  关闭所有窗口,重启系统后,可打开ie浏览器进行测试。

2.4  毕业生信息发布系统的结构与模型
毕业生信息发布系统由毕业生信息查询、添加毕业生、管理毕业生、班主任管理四个模块组成。其中毕业生信息查询是通过客户输入查询条件来实现对毕业生信息的查询;添加毕业生模块由班主任负责添加毕业生的信息;管理毕业生模块也是由班主任对毕业生资料的修改和删除;班主任管理是由管理员对班主任的信息进行删除、修改、和添加。结构图3.1如下:

结构图3.1

TOP

第三章、毕业生信息发布系统具体设计
毕业生信息发布系统由毕业生信息查询、添加毕业生、管理毕业生、班主任管理四个模块组成。其中毕业生信息查询是通过客户输入查询条件来实现对毕业生信息的查询;添加毕业生模块由班主任负责添加毕业生的信息;管理毕业生模块也是由班主任对毕业生资料的修改和删除;班主任管理是由管理员对班主任的信息进行删除、修改、和添加。各功能模块的设计制作过程分为三个内容:数据的形成、前台界面的设计和后台程序的设计。下面我们先对各模块中涉及的数据表先描述,然后分别对各模块的前台界面设计和后台程序的设进行描述。
3.1、相关数据的采集
学生成绩查询和毕业生信息查询。这两个查询功能涉及到大量的数据,而且比较复杂、有word文档、foxpro数据库文件、excel报表。因此数据的采集工作量较大,如我们学校班级涉及范围较广有**、本科、高职……,这样对我们查找资料带来了一定困难,在短时间内我们无法详细收集整理所有数据,所以我们这次设计只采集了我们所需要的相关部门的数据,供我们设计时使用。
通过我们对学校各部门数据关系调查,知道了各个部门对信息需求是各不相同,与本次设计相关主要的部门有:
学生科:主要是管理学生日常学习生活,对学生的一些基本信息的查询工作,从第一学期新生编班、安排班主任及学生的各方面的管理。它可以查阅各班的学生基本信息和对学生信息进行编辑。这是本次设计学生基本情况主要来源。
教务处:主要是管理学校教学工作的部门,它不但管理教师的教学课程的安排还管理学生的学习情况。所以它必须输入学生数据。因此我们这次设计的学生成绩、毕业生信息和班级情况数据来源于此。
通过对我们学校的实地调查研究,设计小组基本掌握了各种数据的流程,图1.1为学生科、教务、教研室及各班级的数据流图:

图4.1  各部门数据流图
在数据流图作出来了之后,我们采集了大量的相关数据,并分类汇总转换格式,最终生成各类mysql数据表。
3.1.1、数据的导入
 现在就我学习的情况作一下小结, 我把有关这方面的东西提取出来,加上了一点自已的理解,
数据的导入:故名思意就是将存储数据加入到本测试数据中,从而可以同原有数据进行查询等的操作。如果有多个表,我则分别列在下面。可以看到这个文件是一个完整的sql文件,如果要将其导入到其它的数据库中可以通过命令行方式,很方便:mysql phptest < a.sql。如果将数据从本地传到服务器上,则可以将这个文件上传,然后在服务器通过命令行方式装入数据。
如果只想卸出建表指令,则命令如下:
mysqldump -d phptest > a.sql
  如果只想卸出插入数据的sql命令,而不需要建表命令,则命令如下:
mysqldump -t phptest > a.sql
  那么如果我只想要数据,而不想要什么sql命令时,应该如何操作呢?
mysqldump -t./ phptest driver
  其中,只有指定了-t参数才可以卸出纯文本文件,表示卸出数据的目录,./表示当前目录,即与mysqldump同一目录。如果不指定driver表,则将卸出整个数据库的数据。每个表会生成两个文件,一个为.sql文件,包含建表执行。另一个为.txt文件,只包含数据,且没有sql指令。
  对卸出的数据文件,也可以同select方法一样,指定字段分隔符,包括字符,转义字段,行记录分隔符。
参数列在下面:
--fields-terminated-by= 字段分隔符
--fields-enclosed-by= 字段包括符
--fields-optionally-enclosed-by= 字段包括符,只用在char和verchar字段上
ields-escaped-by= 转义字符
--lines-terminated-by= 行记录分隔符
"4","rubens","barrichello","2"
小结
  以上为使用select和mysqldump实用程序来卸出文本的方法。select适合利用程序进行处理,而mysqldump则为手工操作,同时提供强大的导出功能,并且可以处理整个库,或库中指定的多表。可以根据需求自行决定使用。
  同时还有一些方法,如直接数据库文件拷贝也可以,但是移动后的数据库系统与原系统应一致才行。这里就不再提了。
同导出相类似,导入也有两种方法:
使用load data infile ’filename’命令
使用mysqlimport实用程序
  由于这两个处理与导出参数相似,只不过是它们的逆操作,故只给出几种命令使用的例子
 使用load命令:
load data infile ’driver.txt’ into table driver fields terminated by ’,’ enclosed by ’"’;
使用mysqlimport实用程序:
mysqlimport --fields-terminated-by=, --fields-enclosed-by=\" phptest driver.txt
3.1.2数据的形成
毕业生信息发布系统的原始数据来源于mysql的bybzr和bys数据。先在php服务器中,将bybzr和bys导成一个成文本,字段间用“,”号分隔,然后在mysql数据库系统中将这一文本文件导入,形成一个bybzr和bys数据表,可供php相关函数调用。它的数据结构如图4.1.1和图4.1.2。

各字段的含义为:userid  班主任编号  username  账号
                pw  密码           bm  部门名称
                xm  姓名           bj   所带班级


注:只剪了部份图片;由于字段多,不说明字段含义。

3.2、毕业生信息查询设计
毕业生信息查询是通过用户输入查询的条件(按专业、学号、姓名)为查询,激活查询按钮调用后台程序byscx.php程序把符合查询条件的信息返回到页面以表格的形式显示出毕业生的基本信息(姓名、性别、出生日期、民族、政治面貌、专业名称、学习形式、现户口所在地、毕业时间这九项基本信息)。点击基本信息中的姓名(激活后台程序是bysxxqk.php)可以查询毕业生的详细资料(包括三年所学的所有课程的成绩等)。这就是毕业生信息查询的设计基本思路。设计的过程式就是分三个方面:一个是数据表形成、前台界面的设计、后台程序的设计。

TOP

3.2.1前台查询表单页面(byscx.htm)的设计制作
   前台查询表单为客户的界面,在此用户可以输入或选择查询方式和查询条件,除一般的网页元素外,都包含表单这一提交元素。下面详细介绍毕业生查询表单的设计制作过程。
   界面如下图所示:

用一个下拉式列表作为查询类别选择,共有三种查询类别:按姓名、按部门和按职称。
  用一个文本框,由用户输入相应的查询条件。另外加入二个按钮,分别用于提交表单和重置表单。
当表单提交后,激活后台程序byscx.php并传递两个变量cxlb和cxtl具体源码如下:
    <html>
<head>
<title>毕业生信息查询</title>
<meta http-equiv="content-type" content="text/html; charset=gb2312">
<script language="javascript">
<!--
function mm_openbrwindow(theurl,winname,features) { //v2.0
  window.open(theurl,winname,features);
}
//-->
</script>
</head>
<body bgcolor="#f7f7f7" text="#000000">
<div align="center"><img src="xrcxbar.gif" width="468" height="60"> <a href="../index.php">返回首页</a>
  <hr width="95%">
</div>
<table width="90%" border="0" cellspacing="0" cellpadding="0" align="center" height="90%" background="bj.gif">
  <tr>
    <td height="221" width="19%" align="center" valign="top" bgcolor="#f5f5f5"><font color="#ffffff">
      <font color="#ffffff"><font color="#0000ff">毕业生信息查询</font></font>
      
      </font></td>
    <td height="221" width="81%">
      <form name="form1" method="post" action="byscx.php">
        <p><b>请输入查询的条件:</b>        
                1、查询类别选择:
          <select name="cxlb">
            <option value="1" selected>按专业查询</option>
            <option value="2">按学号查询</option>
            <option value="3">按姓名查询</option>
          </select>
            </p>
        <p align="left">      2、输入查询条件:
          <input type="text" name="cxtl">
         
         
         
                 
          <input type="submit" name="submit" value="查询">
            
          <input type="reset" name="submit2" value="重置">
        </p>
     
  </tr>
</table>
</body>
</html>
其中更粗为表单内容。
3.2.2    后台查询程序设计
    后台查询程序byscx.php的作用是根据前台程序提供的查询类别和查询条件,连接mysql数据库,并将符合条件的记录返回网页。部分源程序如下:
  <html>
<head>
<!-- #begineditable "doctitle" -->
<!-- #endeditable -->
<meta http-equiv="content-type" content="text/html; charset=gb2312">
</head>
<body bgcolor="#f7f7f7" text="#000000">
<div align="center"><img src="xrcxbar.gif" width="468" height="60"> <a href="../index.php">校内信息查询</a>
  <hr width="95%">
</div>
<table width="90%" border="0" cellspacing="0" cellpadding="0" align="center" height="90%" background="bj.gif">
  <tr>
    <td height="249" background="bj.gif" align="center" valign="top" bgcolor="#f5f5f5"><font color="#ffffff">
      
      <?
//  $conn=mysql_connect("localhost","root","") or die("不能连接服务器");
//  mysql_select_db("xgzd",$conn);
include ("config.php");
switch($cxlb)
  {
    case 1:
   
</table>      }</font>      break;
  }
  $result=mysql_query($sql);
  $nbfields=mysql_num_fields($result);
  echo "<table border=1  cellspacing=0 cellpadding=3 bordercolordark=#ffffff bordercolorlight=#003399>\n";
  while($row=mysql_fetch_field($result))
  {     echo "<td><font size=2>".$row->name. "</font></td>";
   }
        while($row=mysql_fetch_array($result))
        {echo"<tr>\n";
          for($i=0;$i<$nbfields;$i++)
          {
           if($i==0)           {echo"<td><fontsize=2><ahref=bysxxqk.php?xsxh=".$row[1]."&xsxm=".$row[0].">".$row[0]."</a></font></td>\n";}
           else
            {echo "<td><font size=2>".$row[$i]."</font></td>";}
          }  }
        echo  "</tr>\n";
        echo "</table>";
?>   }</font>

显示结果(图4.2.1)
点击姓名查看的说细情况调用的后台程序bysxxqk.php主程序如下:
<?
include ("config.php");
$sql="select * from bys where bys.xh='$xsxh'";
$result=mysql_query($sql);
$row=mysql_fetch_array($result);
?>

TOP

3.3、添加毕业生设计
3.3.1前台添加毕业生页面(loginbzr.htm)
   从主界面上图(4.2.1)中激活添加毕业生按钮同时调用loginbzr.php程序,进入添加毕业生的前台界面,以用户输入帐号和密码验证方式登录。下面详细介绍设计制作该模块的过程。
界面如下图所示:
     
图(4.3.1)添加毕业生界面
用二个文本框,由用户输入帐号和密码。加上二个按钮,分别用于提交和重写。
当提交后,激活后台程序addbys.php,并传输usernamet和pws二个变量。具体代码如下:
<style type="text/css">
<!--
.blue10 {  font-family: "黑体"; font-size: 14px; color: #0099ff; text-decoration: none}
.blue10copy { font-family: "仿宋_gb2312"; font-size: 14px; color: #0099ff; text-decoration: none }
-->
</style>

<body background="newdw.jpg">
<div align="center">
  <p><img src="newbar.jpg" width="468" height="60"></p>
  <table width="500" border="1" cellspacing="0" cellpadding="0" height="220" bgcolor="#e4e4e4" bordercolor="#999999">
    <tr>
      <td height="21" valign="middle" bordercolor="#666666" bgcolor="#d2d2d2">
        <div align="center"><font size="3" color="#000066"><b><font color="#0066ff">用户登录</font></b></font></div>
      </td>
    </tr>
    <tr>
      <td height="112" valign="top" bordercolor="#ff0000">
        <form name="form1" method="post" action="addbys.php">
                

                请输入用户帐号:
          <input type="text" name="username">
         
         
                    用户密码:
          <input type="password" name="pws">
         
                  
                   <font color="#ff0000" size="2">
                    </font>
         
                  <input type="submit" name="submit" value="提交">
                 <input type="reset" name="reset" value="重写">
        </form>
      </td>
    </tr>
  </table>
  <p><font color="#0099ff" size="2" class="blue10">《网管中心》版权所有,未经许可不得修改
    www.xgzd.com webmaster@xgzd.com

建议使用ie4.0以上版本浏览器,800*600分辨率</font>
</p>
</div>
3.3.2后台添加毕业生程序设计(addbys.php)
后台添加程序addbys.php的作用是根据前台程序提供的帐号和密码进行验证。如果账号和密码正确,则连接mysql数据库,进行对本班毕业生信息的添加(图4.3.2)。否则反回在前台页面显示“用户名或密码输入错误!请重新输入”的提示(图4.3.3)。由于后台程序代码太长在这里就不列出来了。图片显示如下:


4图(3.3.2)
3.4、管理毕业生设计
3.4.1前台页面设计(loginmb.htm)
从主界面(图4.2.1)中激活管理毕业生按钮同时运行loginmb.php程序,显示管理毕业生的前台界面和添加毕业生的前台界面一样,也是以用户输入帐号和密码验证方式登录。界面在这里就不重复显示了,管理毕业生和添加毕业生的功能不一样,所以它提交后激活的后台程序不一样。它激活的后台程序是mbys.php。
3.4.2管理毕业生后台程序设计(mbys.php)
管理毕业生后台程序mbys.php作用也是根据前台程序提供帐号和密码进行验证。帐号和密码正确可以对毕业生进行修改和删除操作。源程序如下:
<?
include("config.php");
$result=mysql_query("select * from bybzr where username='$username' and pw='$pws'",$conn);
if (!mysql_fetch_array($result))
{
   header("location:loginmb.php?info=账号或密码错误/请重新输入");
   exit;
}
?>
<html>
<head>
<title>毕业生管理</title>

<?
if ($dyn==1120)
{
mysql_query("$delm",$conn);
}
if ($dyn==1128)
{
}
if($ynedit=='1234')
{
mysql_query("update bys set xh='$xh',xm='$xm',xb='$xb',csrq='$csrq',mz='$mz',zzmm='$zzmm',xl='$xl',zymc='$zymc',xz='$xz',xxxs='$xxxs',sg='$sg',tz='$tz',lxsj=' where id='$idf'",$conn);
}

if ($username=='yxz')
{
$result=mysql_query("select id from bys",$conn);
}
else
{
$result=mysql_query("select id from bys where  bys.bzr='$username'",$conn);
}
$row=mysql_num_rows($result);
$max=$row; //max为毕业生总数
if(!$page)
{
$page=1;
}
$p=ceil($max/30);
$start=30*($page-1);
if($page==$p and ($max%30)<>0)
{
$listn=($max%30);
}
else
{
$listn=30;
}
if($max==0){$listn=0;}
if ($username=='yxz')
{
  $result=mysql_query("select bys.xm as '姓名', bys.xh as '学号',  bys.xb as '姓别', bys.csrq as '出生日期', bys.mz as '民族 ', bys.zzmm as '政治面貌        ',left(bys.zymc,12) as '学习形式  ',bys.xxxs as '专业名称  ',left(xhkszd,12) as '户口所在地',bysj as '毕业时间'  from bys  order by bys.xh desc limit $start, $listn",$conn);
}
else
{
  $result=mysql_query("select bys.xm as '姓名', bys.xh as '学号',  bys.xb as '姓别', bys.csrq as '出生日期', bys.mz as '民族 ', bys.zzmm as '政治面貌        ',left(bys.zymc,12) as '学习形式  ',bys.xxxs as '专业名称 ',left(xhkszd,12) as '户口所在地',bysj as '毕业时间'  from bys  where  bys.bzr='$username' order by bys.xh desc limit $start, $listn",$conn);
}
</td>";
}
while($row=mysql_fetch_array($result))
{
  echo "<tr>\n";
echo"<td><ahref=del.php?dyfl=admin.php&deltj=".$row[2]."&tabname=bybzr&fname=userid&qt=".$row[4].">删除
</a>
</td>";
echo "<td><a href=edit.php?edittj=".$row[2]."&tabname=bybzr&fname=userid>修改</a></td>";
  for($i=2;$i<$fn;$i++)
  {
  echo "<td>".$row[$i]."</td>";
  }
}
  echo "</tr>";
  echo "</table>";
?>
  <p>
</p>
  <p>
<a href="addbzr.php">添加</a> &iexcl;&iexcl;&iexcl;&iexcl;&iexcl;&iexcl;&iexcl;&iexcl;<a href="../index.php">•返回
</a>
</p>
  <p>
<font color="#0099ff" size="2" class="blue10">《网管中心》版权所有,未经许可不得修改
    www.xgzd.com webmaster@xgzd.com
    建议使用ie4.0以上版本浏览器,800*600分辨率</font> </p>
</div>
</font>
</p>
</div>
</body>
</html>

图(4.5.2)显示结果
添加班主任的程序addbzr.php和界面如下(图4.5.3):
<?
  include("config.php");
?>
<html>
<head>
<title>添加用户
</title>
<meta http-equiv="content-type" content="text/html; charset=gb2312">
<body background="newdw.jpg">
<div align="center">
<p><img src="newbar.jpg" width="468" height="60">
</p>
  <p>
<font color="#0000ff" size="5">添加用户
</font>
</p>
      </html>


添加界面

图(4.5.3)
修改主程序del.php及界面(图3.5.4)如下:

图4.5.4
include("config.php");
  $delc="delete from $tabname where $fname=$deltj";
?>
    确定要删除</font><font color="#ff0000">&iexcl;°
    <?
echo   "$qt";
?>
    &iexcl;±</font><font color="#0000ff">是</font>
  </p>
  <p>
<?
    echo "<a href='$dyfl?username=$username&pws=$pws&dyn=1120&delm=$delc'>否</a>----<a href='$dyfl?username=$username&pws=$pws&dyn=1128'>•&ntilde;</a>

";
修改主程序edit.php和界面如下图(4.5.5):

图(3.5.5)
<form name="form1" method="post" action="admin.php">
    <table width="684" border="1" cellspacing="1" cellpadding="1" bordercolor="#ffffff" height="144">
      <tr bgcolor="#cccccc">
        <td width="120" height="61" bordercolor="#ffffff">
          <div align="center">所属部门
</div>
        </td>
        <td width="120" height="61" bordercolor="#ffffff">
          <input type="text" name="bm" size="16" value="<? echo "$row[bm]" ?>">
        </td>
        <td width="120" height="61" bordercolor="#ffffff">
          <div align="center">用户帐号
</div>
        </td>
        <td width="120" height="61" bordercolor="#ffffff">
          <div align="center">
            <input type="text" name="username" size="16" value="<? echo "$row[username]" ?>">
          </div>
        </td>
        <td width="120" height="61" bordercolor="#ffffff">
          <div align="center">密码
</div>
        </td>
        <td width="120" height="61" bordercolor="#ffffff">
          <div align="center">
            <input type="text" name="pw" size="22" value="<? echo "$row[pw]" ?>">
          </div>
        </td>
      </tr>
      <tr bgcolor="#cccccc">
        <td height="63" bordercolor="#ffffff">
          <div align="center">姓名
</div>
        </td>
        <td height="63" bordercolor="#ffffff">
          <input type="text" name="xm" size="8" value="<? echo "$row[xm]" ?>">
        </td>
        <td height="63" bordercolor="#ffffff">
          <div align="center">所带班级
</div>
        </td>
        <td colspan="3" height="63" bordercolor="#ffffff">
          <input type="text" name="bj" size="16" value="<? echo "$row[bj]" ?>">
        </td>
      </tr>
      <tr bgcolor="#cccccc">
        <td colspan="6" height="63" bordercolor="#ffffff">
          <div align="center">
            <input type="submit" name="submit" value="提交">
            &iexcl;&iexcl;&iexcl;&iexcl;&iexcl;&iexcl;
            <input type="reset" name="submit2" value="重写">
            <input type="hidden" name="ynedit" value="1234">
            <input type="hidden" name="userid" value="<? echo "$row[0]" ?>">
          </div>
        </td>

TOP

功能测试与分析
php的最大的优点之一显然在于它的速度快。一般情况下php总是具有足够的速度支持web内容动态生成,许多时候你甚至无法找出比它更快的方法,且在不同的操作体统下,其性能也差别很大。在linux下,mysql的性能相对于在win32下,又有了一个很大的飞跃,所以,如果你不需要存储过程的支持,并且数据库量不是大的那么惊人的话,在linux 下使用mysql作为你的数据库,这个轻量级的数据库可以给你最佳的性能、可管理性和相当不错的安全性。
在设计制作的过程中也难免会遇到很多的问题,这就需要通过查阅相关资料及向人请教得到较好的解决办法。然而面向对象编程(oop)是我们编程的一项基本技能,php4对oop提供了良好的支持。如何使用面向对象编程的思想来进行php的高级编程,对于提高php编程能力和规划好web开发构架都是非常有意义的。在php中,还提供了一系列复杂的oop方法,例如继承,重载,引用,串行化等等。充分调动各种方法并灵活运用,就能够使你的网站更合理和结构化,开发和维护也更容易。我们通常在做一个有数据库后台的网站的时候,都会考虑到程序需要适用于不同的应用环境。和其他编程语言有所不同的是,在php中,操作数据库的是一系列的具体功能函数(如果你不使用odbc接口的话)。这样做虽然效率很高,但是封装却不够。如果有一个统一的数据库接口,那么我们就可以不对程序做任何修改而适用于多种数据库,从而使程序的移植性和跨平台能力都大大提高。
  现在就对我们所做的这一毕业生信息平台的查询的功能及测试大概的说一下:
功能测试主要包括:版面是否正常、超链接是否正确、各种交互功能是否能够正常实现,查询数据是否正常等。
测试方法:一方面手动测试,我们在不同的分辨率下,查看各页面的显示情况,并全面检测交互功能,使用各种数据进行实测;另一方面,使用工具自动检测,以提高功能测试的效率,例如,在对超链接的测试时,我们使用了dreamweaver 4.0提供的站点链接检测功能,收到很好的效果,具体操作为:打开站点管理器,找到并右击网站主文件名index.html
在弹出的快捷菜单中,选择“检查链接→全部文件”命令,在检查链接对话框中,可以看到所有断开的链接,修改后,再使用它检查链接,如此反复,直到没有断链的现象为止。

TOP

结束语

目前,网页制作如火如荼,网站建设热火朝天,特别是电子商务的发展正在关键的时刻,各商家都在作最后的冲刺,网页月月改版,信息日日更新,而个人主页的的制作更是变成了一种新时尚。

软件公司更是极大推广其先进的网页制作技术。macromedia与adode公司的产品在不断更新,蓝色巨人ibm一直从事着电子商务平台的推广工作,其网站建设专家websphere是电子商务平台的解决方案之一,在自由软件领域,php的版本也在不断更新,它与mysql一起构成了linux&unix的网站基础;另外,asp.jsp.dhtml.xml.xsl 等技术更是层出不穷。

可以看到,在网页制作方面,技术越来越先进,使用越来越简单。各大软件公司都在争先恐后推了新的产品,已经形成逐鹿中原的局面。而php与mysql以其经济适用,简捷易用而倍受好评,这也是为什么这么多的用户认为php与mysql是黄金搭挡的原因。

经过老师耐心细致的指导,及设计小组同学们的密切合作,同时翻阅了一些资料,通过同学们近一个月的努力毕业生信息发布系统设计制作完成。在设计制作的过程中,我们遇到了许多的问题,例如查询页面跟数据库导出时遇到的错误不能浏览毕业生信息,这些问题,通过查阅相关资料及向人请教都得到较好的解决。通过这次设计使我们对网站开发涉及的基础知识如php动态网页制作知识、dreanweaver网页制作基本知识更进一步的掌握。在交互式网页设计学会了如何使用mysql建立数据库,以及对数据库浏览,修改,添加,查询。如何用php编写程序来方便教师、学生在网上查询毕业生各方面的信息。
毕业生信息发布让用户可以从网上直截了当的查询浏览到所需要毕业生的相关资料,并且能更全面,更详细的了解毕业生,减免了许多不必要的麻烦,无论是从个人还是从整体角度出发,这都更深层的满足了用户们的要求。

                  

2004年5月6日
                                       《毕业生信息发布系统》设计小组


/点头
终于贴完了,真不容易,不过里面截图很多,没办法一一上传了。

TOP

返回列表

Powered by Discuz! 7.2   论坛QQ群:逐梦论坛群

© 2001-2021 Comsenz Inc. 鲁公网安备 37120302000001号