Foros del Web » Programando para Internet » PHP »

php_printer: Imprimir usando impresora de red

Estas en el tema de php_printer: Imprimir usando impresora de red en el foro de PHP en Foros del Web. Buenas Tengo un problema desde hace mucho tiempo que no puedo solucionar, y es puntualmente imprimir con una impresora de red usando las funciones de ...
  #1 (permalink)  
Antiguo 17/08/2006, 18:49
Avatar de UltraLogico  
Fecha de Ingreso: enero-2005
Mensajes: 21
Antigüedad: 12 años, 10 meses
Puntos: 0
Información php_printer: Imprimir usando impresora de red

Buenas

Tengo un problema desde hace mucho tiempo que no puedo solucionar, y es puntualmente imprimir con una impresora de red usando las funciones de impresión para Windows php_printer

Cuando intento imprimir con la impresora de red recibo estos errores:

Código PHP:
Warningprinter_start_doc() [function.printer-start-doc]: couldn't allocate new print job in imprimir.php on line xxx

Warning: printer_start_page() [function.printer-start-page]: couldn'
t start a new page in imprimir.php on line xxx

Warning
printer_end_page() [function.printer-end-page]: couldnt end the page in imprimir.php on line xxx 
Lei en esta direccion que es un bug de php bugs.php.net/bug.php?id=26346.

Probe muchas cosas y no puedo solucionarlo de ninguna forma. Actualmente intento imprimir usando php 5.1.2, apache 2.0.5 y la impresora esta conectada a una pc win xp

¿Alguno de ustedes pudo solucionar este problema? En caso contrario ¿Qué opciones usan para imprimir desde php? (y tiene que ser una solucion viable para una aplicación administrativa que imprime la facturación de una empresa y que no puedo hacer un pdf o abrir una ventana nueva y que seleccionen imprimir, tiene que ser algo agil y practico)

Espero que alguno tenga la respuesta

Saludos!
  #2 (permalink)  
Antiguo 17/08/2006, 19:07
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
¿Alguno de ustedes pudo solucionar este problema? En caso contrario ¿Qué opciones usan para imprimir desde php? (y tiene que ser una solucion viable para una aplicación administrativa que imprime la facturación de una empresa y que no puedo hacer un pdf o abrir una ventana nueva y que seleccionen imprimir, tiene que ser algo agil y practico)
PHP dado su caracter de "lenguaje" del lado del servidor no está diseñado para taréas de impresión tipo "aplicación de escritorio" lo hace naturalmente.

En PHP es típico por "compatibilidad y standars" generar un PDF. Esto dá un documento bien formateado y listo para la impresión .. pero no fácil de mandar a imprimir (siempre se requiere confirmación del usuario para imprimir o donde imprimir).

Busca soluciones del "lado del cliente" .. lease: ActiveX, Applet Java .. etc. Con PHP ya generaras esos datos que el ActiveX luego trabajarà o Applet Java.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 17/08/2006, 20:09
Avatar de UltraLogico  
Fecha de Ingreso: enero-2005
Mensajes: 21
Antigüedad: 12 años, 10 meses
Puntos: 0
De acuerdo

cluster gracias por la respuesta, pero te cuento que logre hacer andar la imprecion en red!!!!!!!!!!!!!!!

quiero hacer otras pruebas y despues les comento como lo logre

saludos!!
  #4 (permalink)  
Antiguo 18/08/2006, 07:34
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por UltraLogico Ver Mensaje
cluster gracias por la respuesta, pero te cuento que logre hacer andar la imprecion en red!!!!!!!!!!!!!!!

quiero hacer otras pruebas y despues les comento como lo logre

saludos!!
Lo "malo" de usar las funciones "printer" de PHP es que -lamentablemente- sólo funcionan para PHP bajo -windows-, muchos usamos Linux para correr PHP (por temas costos, licencias .. rendimiento .. etc) (a no ser que usases otro método). En otras ocasiones se implementan soluciones que sólo funcionan en ambientes "LAN" (intranets) y luego vienen los problemas cuando la aplicación "internet" la queremos convertir en una "extranet" o directamente pretender ejecutarla desde "internet".

Yo la verdad las aplicaciones "críticas" que necesitan "impresión" de ese estilo: lease; puntos de venta ... etc. No las desarrollo en PHP, se usa un lenguaje de "escritorio" .. La aplicación "web" y "de escritorio" tienen en común la BBDD que usan .. así cada "sistema" hace lo mejor y para lo que se diseñó. .. Por eso te hacía el comentario de "ActiveX" o "Applet Java" .. por qué los puedes integrar en tu aplicación "web" y complen el mismo propósito que lo que sería esa aplicación en "Visual Basic" por ejemplo como "aplicación de escritorio".


Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 18/08/2006, 08:20
Avatar de UltraLogico  
Fecha de Ingreso: enero-2005
Mensajes: 21
Antigüedad: 12 años, 10 meses
Puntos: 0
entiendo lo que me dices Cluster y tienes razon

pero en este caso necesitaba hacer andar el tema de la impresion con php si o si jeje

de todas formas no estoy seguro si funciona igual en todos los casos...

en mi caso puntual funciono asi:
en el servidor instale la impresora de red y elimine todas las demas impresoras, despues comparti esa impresora de red nuevamente y le asigne un nombre de recurso compartido, y en el php llamo a la impresora por ese nombre

Código PHP:
$handle printer_open('XeroxPhaser2'); 
luego de eso configure lo siguiente en esa impresora de red (la que esta en el servidor) y "recompartida" :

(vean estas imagenes)
logindesarrollos.com/imgForos/imp1.jpg
logindesarrollos.com/imgForos/imp2.jpg

y comenzo a imprimir por red

ahora me gustaria ver algo del tema ActiveX o Applet Java... pero no se por donde empezar... conoces algun buen tutorial para novatos???

saludos y gracias!!
  #6 (permalink)  
Antiguo 18/08/2006, 08:53
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Para completar un poco el tema.

Tu impresora (sus drivers) los instalastes en el PC que hace de servidor (Windows) y que corre PHP .. cierto?

Para así tomar como referencia en PHP sólo el nombre del recurso compartido (sin más rutas de red).

Bajo la misma filosofía en ambientes Linux compartiendo el recuros por "Samba" se podría hacer igualmente (teóricamente) .. Así no dependemos del S.O. de turno que use el servidor .. Lo malo es que las funciones "printer" de PHP no están disponibles para PHP en Linux (que yo sepa ..?)

Cita:
ahora me gustaria ver algo del tema ActiveX o Applet Java... pero no se por donde empezar... conoces algun buen tutorial para novatos???
Consulta en los foros de Programación (para el tema de ActiveX) y/o Java (para los applet java) ..


Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:50.