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

PHP
PHP学习中遇到的问题,请高手帮忙 - PHPchina
如何获取IIS虚拟目录的绝对路径 - PHPchina
常常说的SQL注入是怎么做的? - PHPchina
怎么对网站的Alexa排名的数据的采集? - PHPchina
遇到一个session丢失的问题。打开含有mediaplayer播放器的页面,会导致session丢失 -
做小偷遇到一个基础问题.请指教 - PHPchina
php5如何连接ACCESS 2003 - PHPchina
帮找下错误 - PHPchina
split 函数的一个问题 - PHPchina
一个全站系统的数据库设计问题,望大家都来帮帮忙 - PHPchina
分享我的PHP配置心得包含MYSQL5乱码解决 - PHPchina
深入浅出分析Linux设备驱动程序中断 (1)(3)
深入浅出分析Linux设备驱动程序中断 (1)(2)
深入浅出分析Linux设备驱动程序中断 (1)
OpenSSH可实现一次性自动管理多台服务器
如何利用程序循环来控制Perl脚本流程
PHP5应用笔记之Cookie实用攻略(上)
从失败中涉取经验 网站设计的十种常见错误
连载1:利用PHP创建由Oracle 驱动的SOAP服务
连载2:利用PHP创建由Oracle 驱动的SOAP服务

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 93 ::
收藏到网摘: 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;
}
?>