2012-09-09 3 views
0

Я использую локальную точку (Windows 7) Point of Sale с использованием PHP и MySQL, и все, что мне нужно сделать, это открыть ящик, как только я нажму кнопку «Cash Button». Я владею USB-интерфейсом USB-to-Serial Comm Port (COM3) с V-tech Cash Drawer (как показано в диспетчере устройств). Согласно его руководству, единственный способ открыть этот ящик - создать принтер и установить его по умолчанию и выбрать COM3. Я создал один, и я проверил его с помощью этого кода с помощью Google Chrome в качестве браузера для доступа к POSКоманда Javascript Print для открытого ящика

<button onclick="window.print()">Print Test</button> 

Это открывает вид страницы для печати, то я нажимаю на печати ... и это открывает денежный ящик! ! Но нажав на ту же кнопку «Тест печати», она будет поставлена ​​в очередь, потому что первая печать не была удалена из состояния задания печати.

Я нашел возможное решение, но я не пытался проверить его How To cancel Printing or to Delete Print Job - Метод D

Также как бы я отключить Google вид хром печати, или если есть возможный способ непосредственно печати после нажатия кнопки «Cash Button». Я заметил о PHP printer_open следующим образом:

<?php 
$handle = printer_open("Xerox Phaser 6120 PS"); 
$handle = printer_open(); 
?> 

И я получаю эту ошибку Фатальная ошибка: Вызов неопределенной функции printer_open() в C: \ XAMPP \ HTDOCS \ кадр \ print.php в строке 2

Есть ли способ для этого? Спасибо

+2

похоже, что вы не включаете библиотеку принтеров. проверьте это: http://www.php.net/manual/printer.installation.php – StasGrin

ответ

0

Это легко можно сделать в FireFox. Перейдите в about: config, filter with "printer".

Найти "print.always_print_silent" и установить значение true.

Все, что теперь напечатано в FireFox, напрямую переходит к принтеру по умолчанию, пропускающему диалоговое окно выбора принтера.

Помните, что PHP работает только на сервере SERVER, поэтому он еще более удален из оборудования, на котором работает браузер, чем Javascript.

Смежные вопросы