我正在开展一个航空票务项目。
我能够向用户显示最终票证,但是当他/她点击打印按钮时,如何让用户能够打印它。
请帮助..
<title>Untitled Document</title>
<style type="text/css">
#main {
position:absolute;
top:100px;
width:100%;
height:250px;
z-index:1;
}
#submit {
position:absolute;
top:300px;
width:100%;
height:42px;
z-index:2;
}
</style>
</head>
<body>
<div id="main" align="center">
<?PHP
mysql_connect("127.0.0.1","root","");
mysql_select_db("cmc");
$id=$_REQUEST['id'];
$r=mysql_query("select * from manifest where transid=".$id);
$d=mysql_fetch_assoc($r);
?>
<table width="800" border="1">
<tr>
<td colspan="6" align="center">HORIZON AIRWAYS PASSENGER TICKET</td>
</tr>
<tr >
<td colspan="3" align="center">PNR NUMBER: </td>
<td colspan="3" align="center"><?php echo $d["pnrno."]; ?></td>
</tr>
<tr >
<td colspan="3" align="center"> PASSENGER'S NAME:</td>
<td colspan="3" align="center"><?php echo $d["name"]; ?></td>
</tr>
<tr >
<td colspan="3" align="center">DATE OF ISSUE:</td>
<td colspan="3" align="center"><?PHP
ini_set('date.timezone','asia/calcutta');
echo date("d/m/y"); ?></td>
</tr>
<tr >
<td colspan="3" align="center">TIME OF ISSUE:</td>
<td colspan="3" align="center"><?PHP
echo date("h/i/s"); ?></td>
</tr>
<tr >
<td colspan="3" align="center">DATE OF JOURNEY:</td>
<td colspan="3" align="center"><?php echo $d["day"]."-".$d["month"]."-".$d["year"]; ?> </td>
</tr>
<tr>
<td colspan="6" align="center">NOT TRANSFERRABLE</td>
</tr>
<tr>
<td colspan="3" align="center">PASSENGER NAME:</td>
<td colspan="3" align="center"><?php echo $d["name"]; ?></td>
</tr>
<tr>
<td colspan="3" align="center">SECTOR:</td>
<td colspan="3" align="center"><?php echo $d["sector"]; ?></td>
</tr>
<tr>
<td width="134" align="center">FLIGHT #</td>
<td width="132" align="center">CLASS</td>
<td width="112" align="center">DATE</td>
<td width="130" align="center">DEP. TIME</td>
<td width="132" align="center">ARR. TIME</td>
<td width="120" align="center">STATUS</td>
</tr>
<tr>
<td><?php echo $d["flight_no."]; ?></td>
<td><?php echo $d["class"]; ?></td>
<td><?php echo $d["name"]; ?></td>
<td><?php echo $d["departure"]; ?></td>
<td><?php echo $d["arrival"]; ?></td>
<td><?php echo "confirm"; ?></td>
</tr>
</table>
<div id="submit" align="center">
<form name="form1" method="POST">
<input type="submit" value="Print" name="submit"/>
</form>
</div>
</div>
</body>
</html>
答案 0 :(得分:2)
打印必须在客户端进行,而不是在服务器端进行。这不应该是一种形式(我实际上将它作为一个链接)。最简单的方法:
<input type="submit" value="Print" onclick="print(); return false;"/>
答案 1 :(得分:2)
您可以使用javascript函数触发打印事件bij:window.print()
。
示例:
<a href="javascript:window.print()">print page</a>
使用打印CSS告诉浏览器要打印的内容!这样用户就不会浪费纸张;)
包含打印CSS样式表的示例:<style type="text/css" media="print" href="print.css" />
有关CSS打印样式表的更多信息:http://www.alistapart.com/articles/goingtoprint/
答案 2 :(得分:1)
您可以使用print方法
通过javascript调用打印<A HREF="javascript:window.print()">Click to Print This Page</A>
您可能希望在打印时隐藏页面中的某些元素。为此你可以像这样使用css:
@media print {
.non-printable { display: none; }
}
然后将不可打印的类提供给那些您不想打印的元素。
答案 3 :(得分:0)
其他人是正确的,这将通过
来完成 <a href="javascript:window.print()">print ticket</a>
您可能还想为打印版本创建一个单独的CSS样式,以消除不必要的图形。如果有单独的登机牌或其他内容,您还可以添加手动分页符。
<link rel="stylesheet" href="css/print.css" type="text/css" media="print" />