Я не могу найти тему о том, как печатать файл с принтером. Во-первых, я не имею в виду печать как эхо, а настоящий принтер.
Я хочу, чтобы пользователь нажал кнопку, а затем начал печатать страницу.
То же самое, что и javascript: window.print (), но не с PHP. Есть ли такой вариант?
Благодаря!
Вы имеете в виду печать на стороне сервера или на стороне клиента?
На стороне клиента вы можете включить фрагмент javascript, который вызывает функцию JS, которую вы упомянули:
<?php print '<input type="button" value="Print this document" onclick="window.print();" />\n'; ?>
Для серверной стороны это определенно сложнее. Вы можете либо найти PHP-интерфейс, например, CUPS (стандартную систему печати UNIX), либо вызвать системную программу, которая печатает документ. Svish разместил ссылку на интерфейс CUPS, насколько я вижу интерфейс для печати в MS Windows (полезно, только если сервер работает под Windows, конечно).
Изменить: если вы ожидаете найти решение, которое выводит выводимые на клиентский браузер страницы PHP, но не распечатывается на клиенте, а на сервере – это должно быть невозможно. Думаю, вы могли бы реализовать отправку вывода PHP на системную программу, которая отображает страницу, но она никогда не будет выглядеть на 100% как на клиенте. Может быть, приемлемо вызывать программу печати на сервере, передавать всю необходимую ему информацию и отображать собственный документ, например текстовый файл RTF?
PHP работает на стороне сервера и поэтому не может ничего печатать на стороне клиента. Он ничего не может сделать на стороне клиента, а не через сгенерированный HTML, CSS, JavaScript и т. Д. PHP может говорить с принтером, хотя, насколько мне известно, это был бы серверный принтер.
Итак, если вы хотите, чтобы пользователь нажал кнопку, чтобы распечатать страницу, на своем принтере это должно быть что-то на стороне клиента. Например, JavaScript.
Поскольку PHP – серверный язык сценариев, это было бы невозможно.
Вы не можете распечатать документ с принтера с помощью PHP.
Если дизайн печатного документа нежелателен, вы можете добавить таблицу стилей печати.
Или иметь страницу, удобную для печати. Например; передача переменной get, называемой printer, будет иметь ваш php-скрипт, эхо-другой дизайн вашей страницы.
Если вы говорите о серверном принтере, вы можете.