当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP+CSS实现打印简单数据报表功能

PHP
php 服务器调试 Zend Debugger 的安装教程
从Web查询数据库之PHP与MySQL篇
php 应用程序安全防范技术研究
php 不同编码下的字符串长度区分
php 生成饼图 三维饼图
PHP 字符截取 解决中文的截取问题,不用mb系列
PHP5 操作MySQL数据库基础代码
php面向对象全攻略 (一) 面向对象基础知识
php面向对象全攻略 (二) 实例化对象 使用对象成员
php面向对象全攻略 (三)特殊的引用“$this”的使用
php面向对象全攻略 (四)构造方法与析构方法
php面向对象全攻略 (五) 封装性
php面向对象全攻略 (六)__set() __get() __isset() __unset()的用法
php面向对象全攻略 (七) 继承性
php面向对象全攻略 (八)重载新的方法
php面向对象全攻略 (九)访问类型
php面向对象全攻略 (十) final static const关键字的使用
php面向对象全攻略 (十一)__toString()用法 克隆对象 __call处理调用错误
php面向对象全攻略 (十二) 抽象方法和抽象类
php面向对象全攻略 (十四) php5接口技术

PHP+CSS实现打印简单数据报表功能


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 165 ::
收藏到网摘: n/a

,表名:rec 字段:
rec_id,rec_po,rec_part,rec_plant,rec_vendor,rec_pur_um,rec_req_date,rec_req_qty,rec_rec_qty,rec_iqc_date,rec_notes

以下为引用的内容:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Daily Report </title>
<style rel="stylesheet" type="text/css" media="all" />
body {
margin: 9px;
padding: 0;
color: black;
text-decoration: none;
font-size: 10pt;
font-family: "Courier New";
}

input {
font-family: Arial;
}

th {
font-weight: normal;
border-bottom: 1px solid black;
}

td {
font-size: 9pt;
font-family: "Courier New";
}

td.pod {
font-size: 11pt;
font-family: "Courier New";
}

th.pod {
font-size: 11pt;
font-family: "Courier New";
}

td.endline {
border-top: 1px solid black;
}

.left {
text-align: left;
}

.right {
text-align: right;
}

.center {
text-align: center;
}

.top {
vertical-align: top;
}

@media print {
.noprint { display: none; }
}
</style>
</head>
<body>

<?php

define ("SP10" ,'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;');
global re;
function db_link()
{
access_id = "root";
access_pwd = "831025";
db_name = "inv";
@ db = mysql_connect('localhost', access_id, access_pwd) or
die("Could not connect to database. Please contact with IT supporting team ASAP.");
mysql_query("SET NAMES 'GBK'");
mysql_select_db(db_name);
return db;
}
link=db_link();
?>

<table cellpadding="2" cellspacing="3">
<tr>
<td class="right">Program : </td>
<td>bom_report.php</td>
<td><?php echo SP10;?></td>
<td class="right">Date/Time : </td>
<td><?php echo date("Y-m-d").'/'.date("H:i:s");?></td>
</tr>
<tr>
<td class="right"> Plant : </td>
<td>SJ01</td>
<td><?php echo SP10;?></td>
<td class="right"> User Name : </td>
<td>liuxueping</td>
</tr>
<tr>
<td class="right"> Receiving Date : </td>
<td><?php echo date("Y-m-d").'/'.date("H:i:s");?></td>
<td><?php echo SP10;?></td>
<td class="right"> Page : </td>
<td>1</td>
</tr>
<tr><td>&nbsp;</td></tr>
<table>

<table cellpadding="2" cellspacing="3">
<tr>
<th class="header" > No. </th>
<th class="header" > Vendor </th>
<th class="header" > Part </th>
<th class="header" > Description </th>
<th class="header" > UM </th>
<th class="header" > Require Date </th>
<th class="header" > Require Qty </th>
<th class="header" > Deliver Qty </th>
<th class="header" > Receive Qty </th>
<th class="header" > IQC </th>
<th class="header" > Remark </th>
</tr>
<?php

rec_sql = "SELECT * FROM rec WHERE rec_plant = 'SJ01' ORDER BY rec_id DESC";
rec_res = mysql_query(rec_sql);
rec_num = mysql_num_rows(rec_res);

if(rec_num>0){
for (i = 0; i < rec_num; i++){
re++;
rec_row = mysql_fetch_array(rec_res);

part_sql = "SELECT pt_desc FROM part WHERE pt_part='".rec_row['rec_part']."' ";
part_res = mysql_query(part_sql);
part_row = mysql_fetch_array(part_res);

echo'<tr>
<td class="list center bom">'.(i+1).'</td>
<td class="list left bom">'.rec_row['rec_vendor'].'</td>
<td class="list left bom">'.rec_row['rec_part'].'</td>
<td class="list left bom">'.part_row['pt_desc'].'</td>
<td class="list left bom">'.rec_row['rec_pur_um'].'</td>
<td class="list left bom">'.substr(rec_row['rec_req_date'], 0, 10).'</td>
<td class="list right bom">'.number_format(rec_row['rec_req_qty'], 2).'</td>
<td class="list right bom">'.number_format(rec_row['rec_rec_qty'],2).'</td>
<td class="list right bom">'.number_format(rec_row['rec_rec_qty'],2).'</td>
<td class="list left bom">'.substr(rec_row['rec_iqc_date'], 0 ,10).'</td>
<td class="list left bom">'.rec_row['rec_notes'].'</td>
</tr>';

//每页只打印10条记录,如果记录数是10的倍数后,显示'***End of Report***'并开始打印下一页
if(re%10 == 0 and re != rec_num){
echo'
<tr>
<td colspan="11" class="center endline"> *** End of Report *** </td>
</tr>
</table>';
//下一页开始打印
echo '
<p style="page-break-before:always;">&nbsp;</p>
<table cellpadding="2" cellspacing="3">
<tr>
<td class="right">Program : </td><td>bom_pro.php</td><td>'.SP10.'</td><td class="right">Date/Time : </td><td>'.date("Y-m-d").'/'.date("H:i:s").'</td>
</tr>
<tr>
<td class="right"> Plant : </td><td>SJ01</td><td>'.SP10.'</td><td class="right"> User Name : </td><td>lucas</td>
</tr>
<tr>
<td class="right"> Receiving Date : </td><td>'.date('Y-m-d').'</td><td>'.SP10.'</td><td class="right"> Page : </td><td>';echo re/10+1;echo'</td>
</tr>
<tr>
<td>&nbsp;</td>
</tr>
</table>
<table cellpadding="2" cellspacing="3">
<tr>
<th class="header" > No. </th>
<th class="header" > Vendor </th>
<th class="header" > Part </th>
<th class="header" > Description </th>
<th class="header" > UM </th>
<th class="header" > Require Date </th>
<th class="header" > Require Qty </th>
<th class="header" > Deliver Qty </th>
<th class="header" > Receive Qty </th>
<th class="header" > IQC </th>
<th class="header" > Remark </th>
</tr>';
}
}

echo'
<tr>
<td colspan="11" class="center endline"> *** End of Report *** </td>
</tr>
<tr>
<td>
<input type="button" class="noprint" name="print" value="Print" onclick="window.print()">
</td>
<td colspan="11" class="right">
<input type="button" class="noprint" name="close" value="Close Window" onclick="window.close()">
</td>
</tr>
</table>';
}
else{
echo'<script>alert("Have no records!")';
exit;
}
?>