Я пытаюсь сориентировать текст в текстовом принтере с помощью функции php printer_write, но я знаю, что он не будет работать таким образом. Можете ли вы предложить мне способ иметь значения в таблице или div, чтобы они были организованы.Таблицы в текстовом принтере - PHP
Ниже приведен код, который я использую.
<?php
include "connect.php";
include "links.php";
$date = DATE('D, d M, Y');
$i=1;
$getData = mysql_query("SELECT * FROM facturas");
$dataCount = mysql_num_rows($getData);
$handle = printer_open("Generic/Text Only");
printer_set_option($handle, PRINTER_MODE, "RAW");
printer_set_option($handle, PRINTER_TEXT_ALIGN, PRINTER_TA_RIGHT);
printer_write($handle, $business_name . " " . $date);
printer_write($handle, "\n");
printer_write($handle, $street . ", " . $city);
printer_write($handle, "\n");
printer_write($handle, $phone);
printer_write($handle, "\n");
printer_write($handle, "-----------------------------------");
printer_write($handle, "\n");
printer_write($handle, "\n");
while($showData = mysql_fetch_array($getData)){
$serial = $showData['serial'];
$type = $showData['type'];
$model = $showData['model'];
$qty = $showData['qty'];
$price = $showData['price'];
printer_write($handle, $qty . " x " . $type . " " . $model . "....." . $price . "\n");
}
printer_write($handle, "\n");
printer_write($handle, "\n");
printer_write($handle, "\n");
printer_write($handle, "\n");
printer_write($handle, "\n");
printer_write($handle, "\n");
printer_write($handle, "\n");
printer_write($handle, "\n");
printer_close($handle);
?>
Этот код будет печатать хорошо, но код printer_qire в WHILE
цикле будет juest печать все на каждой своей линии, работает нормально, как это должно быть, но если есть в любом случае я могу иметь эти данные в таблицах?
Это код практики на локальном сервере, и мне известно о SQL Injection.
Благодаря
используйте str_pad для каждого из полей, чтобы выгрузить каждую из строк с шириной столбца перед печатью. – Orangepill
что-то вроде 'str_pad (printer_write ($ handle," blah blah "), 10)' ?? –
nevermind ... это назад ... вы должны сделать printer_write ($ handle, str_pad ("blah blah", 10, "")); – Orangepill