打印PHP后重定向

时间:2015-03-23 13:34:33

标签: php printing

我想在用户点击打印并且打印完成后重定向到页面。可以实现吗?

这是我的简单代码。

<?php
include('include/conn.php');
$id = $_GET['id'];
$sql = "select * from barcode where b_acc_no_code = '".$id."'";

$result = mysqli_query($conn,$sql);

while($row = mysqli_fetch_assoc($result)){

$path = $row['b_path'];

echo '<img src="'.$path.'.jpg" />';
echo '<script>window.print();</script>';
//header('location: barcode.php');
}
?>

如您所见,我评论了重定向代码。提前致谢

3 个答案:

答案 0 :(得分:2)

如果php已输出任何内容,header()函数将无效。标题应该在任何输出之前发送。

您可以使用

<meta http-equiv="refresh" content="5; url=http://yourdomain.com/path/to/barcode.php">

在页面的HTML中,在加载完成后将在5秒内重定向。

希望这有帮助!

答案 1 :(得分:0)

不幸的是,当您在网页上打印某些内容时,您无法使用标题功能。 (标题必须在任何内容之前)以及这就是为什么你不能这样做。

解决方法是通过javascript重定向,如下所示:

echo '<script>self.location = "barcode.php";</script>';

您可以使用headers_sent功能检查是否可以使用标题功能,但这只是一个计划问题。在您的代码中,使用JS将解决问题。

答案 2 :(得分:0)

首先应该定义

标头,因为你没有使用输出缓冲区。