imprimir en ticketera php

5
Sacado de: http://mitareaperu.blogspot.com/2010/06/imprimir-en- impresora-fiscal-ticket.html IMPRIMIR EN IMPRESORA FISCAL (ticket, boleta, factura, contometro) DESDE PHP Bueno investigando encontre que en PHP se puede crear un archivo de texto (digamos un block de notas) que luego hago un llamado al shell_exec y ahi le paso el archivo creado, el cual este mismo lo imprime por el puerto deseado, un ejemplo de como imprimir en una IMPRESORA FISCAL O TIQUETERA en php es: <?php /** * @author ZEGARRA CORNE, Sergio * @Instituto IDAT */ $Archivo_q_se_crea = fopen("puerto en el cual se desea imprimir", "w"); $dato = $_POST['videos']; //recibo algunos datos de otra pagina // aqui comienzo a crear o digamos llenar el archivos con algunos datos fwrite($Archivo_q_se_crea,"================================="); fwrite($Archivo_q_se_crea,"TITULO"); fwrite($Archivo_q_se_crea,"CANTIDAD"); fwrite($Archivo_q_se_crea,"Nombre".$dato ); fwrite($Archivo_q_se_crea," :: AQUI VAN LOS COMANDOS DE LA IMPRESORA ::"); fwrite($Archivo_q_se_crea," :: ESTO DEPENDE DEL MODELO ::"); fwrite($Archivo_q_se_crea," :: AQUI TAMBIEN PODEMOS PONER EL COMANDO QUE HABRE LA GABETA DE DINERO O EL CAJON ::"); fwrite($Archivo_q_se_crea," Gracias por Comprar en VideosconVida.com"); // ahora cerramos el archivo creado fclose($Archivo_q_se_crea); // cierra el fichero //y por ultimo mandamos todos los codigos almacenados en el archivo "$Archivo_q_se_crea",(IMPRIMIMOS) shell_exec('lpr "puerto en el cual se desea imprimir"'); ?>

Upload: marlon56

Post on 21-Apr-2015

3.034 views

Category:

Documents


9 download

TRANSCRIPT

Page 1: Imprimir en Ticketera Php

Sacado de: http://mitareaperu.blogspot.com/2010/06/imprimir-en-impresora-fiscal-ticket.html

IMPRIMIR EN IMPRESORA FISCAL (ticket, boleta, factura, contometro) DESDE PHP

Bueno investigando encontre que en PHP se puede crear un archivo de texto (digamos un block de notas) que luego hago un llamado al shell_exec y ahi le paso el archivo creado, el cual este mismo lo imprime por el puerto deseado, un ejemplo de como imprimir en una IMPRESORA FISCAL O TIQUETERA en php es:

<?php/*** @author ZEGARRA CORNE, Sergio* @Instituto IDAT*/ $Archivo_q_se_crea = fopen("puerto en el cual se desea imprimir", "w");$dato = $_POST['videos']; //recibo algunos datos de otra pagina// aqui comienzo a crear o digamos llenar el archivos con algunos datos fwrite($Archivo_q_se_crea,"================================="); fwrite($Archivo_q_se_crea,"TITULO"); fwrite($Archivo_q_se_crea,"CANTIDAD"); fwrite($Archivo_q_se_crea,"Nombre".$dato ); fwrite($Archivo_q_se_crea," :: AQUI VAN LOS COMANDOS DE LA IMPRESORA ::");fwrite($Archivo_q_se_crea," :: ESTO DEPENDE DEL MODELO ::");fwrite($Archivo_q_se_crea," :: AQUI TAMBIEN PODEMOS PONER EL COMANDO QUE HABRE LA GABETA DE DINERO O EL CAJON ::");fwrite($Archivo_q_se_crea," Gracias por Comprar en VideosconVida.com");// ahora cerramos el archivo creado fclose($Archivo_q_se_crea); // cierra el fichero//y por ultimo mandamos todos los codigos almacenados en el archivo "$Archivo_q_se_crea",(IMPRIMIMOS)shell_exec('lpr "puerto en el cual se desea imprimir"'); ?>

Bueno y ese es un ejemplo basico que he encontrado para poder imprimir en PHP

IMPRIMIR TICKET EN IMPRESORA FISCAL CON PHP - PASO A PASO - LADO DEL CLIENTE Vamos paso a paso amigos:

Y ahora vamos con el lado del cliente que recibe.

En nuestro caso el servidor realiza el proceso de registro a travez de AJAX lo cual el proceso de registro nos devuelve la respuesta:

mediante jquery registro un nombre:

Page 2: Imprimir en Ticketera Php

digamos que el input del form se llama txt_nom < - input id="txt_nom" type="text" - />

entonces con jquery lo rescatamos asi:

var nom = $("#txt_nom").val();

ahora este valor lo vamos a pasar a la pagina que procesa el registro, que se llama guarda.php

1

2

3

4

5

<script>

var nom = $("#txt_nom").val();

$.POST("guarda.php",

{nom:nom},function(datos_retorno){

//aqui resivo si es ok o error

})

</script>

Ahora vemos el contenido de la pagina guarda

1

2

3

4

5

6

7

8

9

1

0

1

1

1

2

1

3

1

4

1

5

1

6

/** pagina guarda.php */

//recibo los parametros

$nom = $_POST["nom"];

$r = $objd->query("insert into tbl_reg (nombre) values

('$nom')");

if($r)

echo "ok";

else

echo "error";

?>

Page 3: Imprimir en Ticketera Php

Ahora mas completo el script de aariba

1

2

3

4

5

6

7

8

9

1

0

<script>

$.POST("guarda.php",{nom:nom},function(datos_retorno){

//aqui resivo si es ok o error

if(datos_retorno==true){

$.post("http://localhost/tosch/reporte/prueba.php",{datos:"pasas

algo"});

}else

alert("no se registro");

})

</script>

Ahora vemos que nuestro servidor esta invocando a la pagina que esta en nuestra pc, por eso el HTTP://LOCALHOST

y la pagina prueba.php esta esto

1

2

3

4

5

6

7

8

9

1

0

1

1

1

2

1

3

1

4

1

5

1

6

1

7

/**

* @author ZEGARRA CORNE, Sergio

* @copyright 2009

*/

if(($handle = @fopen("COM5", "w")) === FALSE){

die('No se puedo Imprimir, Verifique su conexion con el

Terminal');

}

$dato = $_POST['datos'];

fwrite($handle,chr(27). chr(64));//reinicio

//fwrite($handle, chr(27). chr(112). chr(48));//ABRIR EL CAJON

fwrite($handle, chr(27). chr(100). chr(0));//salto de linea VACIO

fwrite($handle, chr(27). chr(33). chr(8));//negrita

fwrite($handle, chr(27). chr(97). chr(1));//centrado

fwrite($handle,"=================================");

fwrite($handle, chr(27). chr(100). chr(1));//salto de linea

fwrite($handle, chr(27). chr(32). chr(3));//ESTACIO ENTRE LETRAS

fwrite($handle,"I. C. M. EL APOSENTO ALTO ");

fwrite($handle, chr(27). chr(32). chr(0));//ESTACIO ENTRE LETRAS

fwrite($handle, chr(27). chr(100). chr(0));//salto de linea VACIO

Page 4: Imprimir en Ticketera Php

1

8

1

9

2

0

2

1

2

2

2

3

2

4

2

5

2

6

2

7

2

8

2

9

3

0

3

1

3

2

3

3

3

4

3

5

3

6

3

7

3

8

3

9

fwrite($handle, chr(27). chr(33). chr(8));//negrita

fwrite($handle, chr(27). chr(100). chr(0));//salto de linea VACIO

fwrite($handle, chr(27). chr(100). chr(1));//salto de linea

fwrite($handle,"Nacimos de Nuevo para ser grandes");

fwrite($handle, chr(27). chr(100). chr(1));//salto de linea

fwrite($handle,"=================================");

fwrite($handle, chr(27). chr(100). chr(1));//salto de linea

fwrite($handle, chr(27). chr(100). chr(1));//salto de linea

fwrite($handle,"PALABRA A IMPRIMIT: ".$dato);

fclose($handle); // cierra el fichero PRN

$salida = shell_exec('lpr COM5'); //lpr->puerto impresora, imprimir

archivo PRN

?>

Page 5: Imprimir en Ticketera Php

RECUERDEN QUE ESTA PAGINA prueba.php SE ESTA EJECUTANDO EN LA PC LOCAL, en mi caso en el DISTRITO DE ATE VITARTE, PUENTE PIEDRA, ETC.....

ESPERO QUE CON ESTO ESTE MAS CLARA LA SOLUCIÓN A SUS PROBLEMAS, y si no es así podemos ponernos en contacto, claro, siempre y cuando estén cerca, por el momento estoy ocupado, ya que estoy en mi VI CICLO de la IDAT y tan dejando mucha tarea, pero si aun le quedan mas dudas tratare de ralizar un video paso a paso.

Su amigo para servirles Sergio Zeg