会议记录管理系统(5) -浏览会议记录模块设计
2017-12-20 21:39
429 查看
1.浏览会议记录模块概述
浏览会议记录模块可以说是整个管理系统的核心。其主要功能是通过查询数据库的相关数据,将会议的各种信息输出到浏览器页面中,用户不但可以浏览特定会议的详情,同时也可以对会议内容进行打印预览或打印操作。同时,用户也可将所有会议的信息以Excel报表形式导出。
2.WebBrowser打印技术
webBrowser打印,是IE浏览器内置的浏览器空间,其优点在于无须用户下载目标文件,且可以支持客户端独立完成目标文件的打印,这样可以减轻服务器负担;缺点是源文档的分析操作比较复杂,并且要对源文档中要打印的内容进行约束。
在本项目中封装两个JavaScript脚本函数,通过不同的函数加载不同的WebBrowser控件,完成报表的打印预览和打印操作。关键代码如下:
3.Excel报表生成技术分析
Excel报表是通过header()函数生成下载文件的,header函数属于HTTP函数,它的作用是发送一个原始的HTTP标头。header函数的语法如下:
- string:发送标头
- replace:如果一次发送多个标头,指明相似的标头是替换还是添加
- http_response_code:强制HTTP响应为指定值
生成Excel报表的关键代码如下:
4.文本文件中数据的获取技术分析
获取文件内容,在添加会议记录过程中会添加一个文本文档。在浏览会议记录时,会通过数据库相应的路径获取相应文件的内容并显示在浏览页面上。关键代码如下:
5.浏览会议记录实现过程
会议信息显示页面循环输出会议主要信息,首先查看tb_meeting_info数据表中是否有记录,如果数据库中没有记录,则输出“当前没有任何记录”;如果数据库中有数据,则分页输出数据。会议信息显示页viewmeeting.php关键代码如下:
6.会议记录详细信息浏览实现过程
对于会议记录管理系统,不仅可以浏览会议的主要信息,还可以查看会议的详细内容,阅读特定的会议内容。
创建showinfo.php文件,根据GET方法传递ID值,查询数据库中的数据,返回查询结果。并且通过文件系统函数读取文本文件中存储的会议记录内容。关键代码如下:
printwindow.php关键代码如下:
浏览会议记录模块可以说是整个管理系统的核心。其主要功能是通过查询数据库的相关数据,将会议的各种信息输出到浏览器页面中,用户不但可以浏览特定会议的详情,同时也可以对会议内容进行打印预览或打印操作。同时,用户也可将所有会议的信息以Excel报表形式导出。
2.WebBrowser打印技术
webBrowser打印,是IE浏览器内置的浏览器空间,其优点在于无须用户下载目标文件,且可以支持客户端独立完成目标文件的打印,这样可以减轻服务器负担;缺点是源文档的分析操作比较复杂,并且要对源文档中要打印的内容进行约束。
在本项目中封装两个JavaScript脚本函数,通过不同的函数加载不同的WebBrowser控件,完成报表的打印预览和打印操作。关键代码如下:
<script> function printview(){ document.all.WebBrowser1.ExecWB(7,1); // 执行打印预览 window.close(); } function print(){ document.all.WebBrowser1.ExecWB(6,1); // 执行打印操作 window.close(); } </script> xmlhttp.send(null); <object ID='WebBrowser1' WIDTH=0 HEIGHT=0 CLASSID='CLSID:8856F961-340A-11D0-A968-00C04FD705A2'></object> <?php $action = $_POST["print"]; if($action == "打印预览"){ // 判断前台按钮操作 ?> <body topmargin="0" leftmargin="0" bottommargin="0" onLoad="printview();"> <?php }else if($action == "打印"){ // 判断前台按钮操作 ?> <body topmargin="0" leftmargin="0" bottommargin="0" onLoad="print();"> <?php } ?>
3.Excel报表生成技术分析
Excel报表是通过header()函数生成下载文件的,header函数属于HTTP函数,它的作用是发送一个原始的HTTP标头。header函数的语法如下:
void header(string string[,bool replace[,int http_response_code]])
- string:发送标头
- replace:如果一次发送多个标头,指明相似的标头是替换还是添加
- http_response_code:强制HTTP响应为指定值
生成Excel报表的关键代码如下:
<?php header("Content-type:application/vnd.ms=excel"); // 设置HTTP头 header("Content-Disposition:filename=会议报表.xls"); //定义下载文件名称 session_start(); ?>
4.文本文件中数据的获取技术分析
获取文件内容,在添加会议记录过程中会添加一个文本文档。在浏览会议记录时,会通过数据库相应的路径获取相应文件的内容并显示在浏览页面上。关键代码如下:
$myfile = fopen("$address","r"); //将文件以只读方式打开 $myline = fgets($myfile); // 按行获取文件内容 echo $myline; // 输出获取的文件内容 fclose($myfile); // 关闭文件
5.浏览会议记录实现过程
会议信息显示页面循环输出会议主要信息,首先查看tb_meeting_info数据表中是否有记录,如果数据库中没有记录,则输出“当前没有任何记录”;如果数据库中有数据,则分页输出数据。会议信息显示页viewmeeting.php关键代码如下:
<?php header("Content-Type:text/html;charset=utf-8"); date_default_timezone_set('PRC'); // 设置为北京时间 include_once('conn/conn.php'); $sqlview = "select * from tb_meeting_info"; $num = 2; // 每页显示2条 if(isset($_GET['n_page'])){ // 判断当前页码 $c_page = $_GET['n_page']; // 将$n_page赋给变量$c_page }else{ $c_page = 1; // 初始化变量$c_page } // php分页开始 $count = mysql_query("select count(*) from tb_meeting_info"); // 记录总数 // 从结果集中取得一行作为关联数组 $rs = mysql_fetch_array($count); $totalNumber = $rs[0]; // 总记录数量 $totalPage = ceil($totalNumber/$num); // 计算出总页数(当前2页) $startCount = ($c_page - 1) * $num; // 根据此方法计算出开始的记录 // 根据前面的计算出开始的记录和记录数 // limit用法,从$sartCount+1开始,取$num行 $result = mysql_query("select * from tb_meeting_info limit $startCount,$num"); echo "<table border='1'>"; echo "<tr>"; echo "<th>会议编号</th>"; echo "<th>会议名称</th>"; echo "<th>会议出席者</th>"; echo "<th>会议摘要</th>"; echo "</tr>"; while($row = mysql_fetch_array($result)){ echo "<tr>"; echo "<td>$row[meeting_id]</td>"; echo "<td>$row[meeting_name]</td>"; echo "<td>$row[meeting_present]</td>"; echo "<td>$row[meeting_abstruct]</td>"; echo "</tr>"; } echo "</table>"; if($c_page != 1){ // 如果不是第一页 ?> <a href="viewmeeting.php?n_page=<?php echo $c_page - 1;?>">上一页</a> <!-- 显示上一页 --> <?php } for($i = 1;$i <= $totalPage;$i++){ //循环显示页码 ?> <a href="viewmeeting.php?n_page=<?php echo $i;?>"><?php echo $i;?></a> <?php } if($c_page < $totalPage){ // 当前页数小于总页数,显示下一页链接 ?> <a href="viewmeeting.php?n_page=<?php echo $c_page + 1;?>">下一页</a> <?php } ?>
6.会议记录详细信息浏览实现过程
对于会议记录管理系统,不仅可以浏览会议的主要信息,还可以查看会议的详细内容,阅读特定的会议内容。
创建showinfo.php文件,根据GET方法传递ID值,查询数据库中的数据,返回查询结果。并且通过文件系统函数读取文本文件中存储的会议记录内容。关键代码如下:
<?php header("Content-Type:text/html;charset=utf-8"); date_default_timezone_set('PRC'); // 设置为北京时间 include_once "conn/conn.php"; $id = $_GET["id"]; // 获取传递的ID值 // 数据库查询语句 $sqlstriii = "select * from tb_meeting_info where meeting_id = $id"; $s_rst = mysql_query($sqlstriii); $retult = mysql_fetch_array($s_rst,MYSQL_ASSOC); // print_r($retult); ?> <div class="infoshow"> <table width="560" border="0" cellspacing="0" cellpadding="0"> <form action="printwindow.php" method="post"> <tr> <td colspan="4" align="center"> <h3>会议记录详情</h3> </td> </tr> <tr> <td width="134"><div align="right">会议编号:</div></td> <td width="340"><?php echo $retult['meeting_id']?></td> <td width="135"><div align="right">会议名称:</div></td> <td width="341"><?php echo $retult['meeting_name']?></td> </tr> <!-- 省略部分代码 --> <tr> <td height="200" colspan="4"> <div> <?php $address = $retult['meeting_address']; // 文件路径及文件名称 $myfile = fopen("$address","r"); // 将文件以只读形式打开 $myline = fgets($myfile); // 按行读取文件内容 echo $myline; // 输出文件内容 fclose($myfile); // 关闭文件 ?> </div> </td> </tr> <tr> <td colspan="4" align="center"> <input type="hidden" name="id" value="<?php echo $id;?>" /> </td> </tr> <div class="printbutton"> <input type="submit" value="打印预览" name="print" /> <input type="submit" value="打印" name="print" /> </div> </form> </table> </div>
printwindow.php关键代码如下:
<script> function printview(){ document.all.WebBrowser1.ExecWB(7,1); // 执行打印预览 window.close(); } function print(){ document.all.WebBrowser1.ExecWB(6,1); // 执行打印操作 window.close(); } </script> <object ID='WebBrowser1' WIDTH=0 HEIGHT=0 CLASSID='CLSID:8856F961-340A-11D0-A968-00C04FD705A2'></object> <?php $action = $_POST["print"]; if($action == "打印预览"){ // 判断前台按钮操作 ?> <body topmargin="0" leftmargin="0" bottommargin="0" onLoad="printview();"> <?php }else if($action == "打印"){ // 判断前台按钮操作 ?> <body topmargin="0" leftmargin="0" bottommargin="0" onLoad="print();"> <?php } ?>
相关文章推荐
- 会议记录管理系统(3) - 用户个人信息模块设计
- 会议记录管理系统(6) - 查找会议记录模块设计
- 会议记录管理系统(4) - 会议记录添加模块
- 模块管理常规功能自定义系统的设计与实现(07--form窗口的调整)
- Java之------单机版书店管理系统(设计思想和设计模式系列五)进货模块
- Java之------单机版书店管理系统(设计思想和设计模式系列四)图书模块
- 模块管理常规功能自定义系统的设计与实现(19--模块附件的设计[2])
- Java-单机版的书店管理系统(练习设计模块和思想_系列 五 )
- 模块管理常规功能自定义系统的设计与实现(23--二个模块之间的关联[1])
- 模块管理常规功能自定义系统的设计与实现(32--权限设计[2])
- IM系统中聊天记录模块的设计与实现
- Java之------单机版书店管理系统(设计思想和设计模式系列七)库存模块
- IM设计与实现的系统模块的聊天记录
- Java之------单机版书店管理系统(设计思想和设计模式系列二)用户模块
- 客户管理系统之模块设计(三)
- 会议记录管理系统(1)
- 【Windows Form 实战】学生成绩管理系统(四) 登录模块设计
- 《ASP.NET办公自动化系统开发实例导航》笔记二 系统管理模块设计
- 软件项目管理系统:项目资料模块权限分配设计文档
- 设计与实现经常拥有自己定义模块管理系统(19--设计模块附件[2])