【问题标题】:PHP - Print content to a local printer over networkPHP - 通过网络将内容打印到本地打印机
【发布时间】:2014-02-05 19:28:39
【问题描述】:

我想通过网络打印机发送一些输出:

$printoutput .="<tr><td width='10%'> Item #". ($i+1) ."</td></tr> 
                            <tr width='20%'><td>  " . $product_name . " --&nbsp;$" . $price . ".00</td></tr>
                            <tr><td width='40%'>" . $displayoptions . "</td>
                            <tr><td>&nbsp;</td></tr>";

当我回显 printoutput 变量时,以上所有内容都可以在我的脚本中完美运行。该信息是用户选择的收据。我想做的是创建一个按钮,该按钮将自动通过$printoutput 发送到本地网络打印机。

我希望它尽可能简单,没有任何打印对话框 - 一个简单的点击按钮,将数据发送到本地网络打印机。

我一直在网上研究,并没有真正找到任何有用的东西。 onClick="window.print()" 函数会弹出一个打印对话框屏幕,然后只在页面上打印该内容。

我在 PHP 手册中查看了printer_open,但我不确定我是否朝着正确的方向前进。有人对这个有经验么?任何帮助将不胜感激。任何可以引导我走向正确方向的代码都会更好。

【问题讨论】:

    标签: php button printing submit


    【解决方案1】:

    如果打印机是真正的“本地”打印机,并且它连接到运行 PHP 的服务器,并且服务器是 Linux,您可以执行以下操作:

    $cmd = 'echo '.$printoutput.' | lpr';
    
    $response = shell_exec($cmd);
    

    如果您尝试打印到“远程”打印机,即打印机连接到运行浏览器的机器,或者如果您希望浏览器在打印之前呈现您的 HTML,恐怕是 Javascript 的窗口.print() 几乎是您唯一的选择。出于安全原因,它总是弹出“打印机选择”窗口。

    【讨论】:

      猜你喜欢
      • 2017-04-21
      • 2012-05-28
      • 2011-04-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多