I say thank you before, I hope you can help my problem, this's my first time using framework laravel 5.4 in case of struk printing with windows 7 operating system and using epson U220 which printer connected with USB locally, but when i'm try to access page and click button print, printer doesn't action print page.
Controller
<?php
namespace App\Http\Controllers;
use App\Pembayaran;
use Illuminate\Http\Request;
use Yajra\DataTables\DataTables;
use Mike42\Escpos\Printer;
use Mike42\Escpos\PrintConnectors\WindowsPrintConnector;
use Mike42\Escpos\PrintConnectors\FilePrintConnector;
use Mike42\Escpos\PrintConnectors\NetworkPrintConnector;
class PembayaranController extends Controller
{
public function print(Request $request)
{
try {
$connector = new WindowsPrintConnector("\\wind7\usb\epson");
$printer = new Escpos($connector);
$printer -> text("Hello World!\n");
$printer -> cut();
$printer -> close();
} catch(Exception $e) {
echo "Couldn't print to this printer: " . $e -> getMessage() . "\n";
}
}
}
Route
<?php
Auth::routes();
Route::get('/', function () {
return redirect()->route('home');
});
Route::get('/home', 'HomeController@index')->name('home');
Route::post('/pembayaran/print', 'PembayaranController@print')->name('pembayaran.print');
Blade
<form action="{{ route('pembayaran.print') }}" method="POST">
<input type="text" name="username" class="form-control">
<input type="hidden" name="_token" class="form-control" value="{!! csrf_token() !!}">
<button type="submit" name="submit" class="btn btn-info">Print</button
</form>
The share name
should be passed to the WindowsPrintConnector
as the first argument, instead:
For instance:
$connector = new WindowsPrintConnector("epson U220");
If the share name was epson U2020