Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Mostrar barcode

Estas en el tema de Mostrar barcode en el foro de PHP en Foros del Web. Hola a todos, tengo un problema con un asunto mil veces comentado. Me refiero a poner un código de barras en una pagina web mediante ...
  #1 (permalink)  
Antiguo 19/04/2015, 19:07
Avatar de ricardo_tu  
Fecha de Ingreso: noviembre-2010
Ubicación: Mas aca del mas alla
Mensajes: 222
Antigüedad: 14 años
Puntos: 32
Mostrar barcode

Hola a todos, tengo un problema con un asunto mil veces comentado. Me refiero a poner un código de barras en una pagina web mediante BARCODE GENERATOR.

Mi tema es que logro visualizar el bar-code con este script

Código PHP:
require_once('class/BCGFontFile.php');
require_once(
'class/BCGColor.php');
require_once(
'class/BCGDrawing.php');
require_once(
'class/BCGcode128.barcode.php');
 
//$font = new BCGFontFile('./class/font/Arial.ttf', 18);
$color_black = new BCGColor(200200200);
$color_white = new BCGColor(255255255);
 
// Barcode Part
$code = new BCGcode128();
$code->setScale(2);
$code->setThickness(30);
 
$code->setForegroundColor($color_black);
$code->setBackgroundColor($color_white);
$code->setFont($font); 
$code->setStart(NULL);
$code->setTilde(true);
$code->parse('123456789');
 
// Drawing Part
$drawing = new BCGDrawing(''$color_white);
$drawing->setBarcode($code);
$drawing->draw();
 
header('Content-Type: image/png');
 
$drawing->finish(BCGDrawing::IMG_FORMAT_PNG); 
Sin embargo no encuentro el modo de ponerlo en lugar que necesito ya que como es lógico al haber mostrado otros elementos en pantalla me da el error

Warning: Cannot modify header information - headers already sent by .....

Agradeceré mucho si alguien me da una luz de por donde seguir.
__________________
La ciencia al poder. Pazciencia ya viene
  #2 (permalink)  
Antiguo 19/04/2015, 19:29
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 8 meses
Puntos: 2534
Respuesta: Mostrar barcode

Si pudieras mostrar el error completo sería más fácil entender, ¿o crees que podríamos deducir el resto?

Cita:
Agradeceré mucho si alguien me da una luz de por donde seguir.
Claro, y cortando el mensaje de error "porque creas que no es útil" tampoco da luz alguna.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 19/04/2015, 19:32
Avatar de ricardo_tu  
Fecha de Ingreso: noviembre-2010
Ubicación: Mas aca del mas alla
Mensajes: 222
Antigüedad: 14 años
Puntos: 32
Respuesta: Mostrar barcode

Paquetetruco (oops perdon) patequetrueque: Lee el post, no hay nada que deducir. Y por favor, deja que otra persona intente ayudarme. Tu puedes seguir con la guitarrita y tu "simpatia".
__________________
La ciencia al poder. Pazciencia ya viene

Última edición por ricardo_tu; 19/04/2015 a las 20:04
  #4 (permalink)  
Antiguo 19/04/2015, 20:13
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 8 meses
Puntos: 2534
Respuesta: Mostrar barcode

¿Entonces ya sabes en qué consiste un error "Cannot modify header information" o para qué abriste el tema?

Cita:
Warning: Cannot modify header information - headers already sent by .....
Si pudiéramos leer el error completo sabríamos exactamente en que linea se produce una salida prematura.

¿Si sabes que para usar header() así como cookies, sesiones, etc. hay que hacerlo antes de enviar cualquier tipo de salida?

Bien ahí, pues en HTTP las cabeceras van antes del contenido, como prueba has estos ejercicios.

a) Lo único en el archivo es lo siguiente, se envían las cabeceras antes de imprimir algo:
Código PHP:
Ver original
  1. <?php
  2. // BIEN
  3. header('Content-Type: text/plain');
  4.  
  5. echo 'OK';

b) Acá ya está mal, porque se imprime y después de envían las cabeceras:
Código PHP:
Ver original
  1. <?php
  2.  
  3. echo 'OK';
  4.  
  5. // MAL
  6. header('Content-Type: text/plain');

Si habilitas el reporte de errores descubrirás que el ejercicio (b) corresponde exactamente a tu problema.

Entiende que el uso de header() representa la manera en que el cliente identificará de qué se trata el contenido, probablemente tengas más código que tampoco alcanzamos a adivinar, o bien, los includes que haces introducen algún salto de linea, espacio o inclusive pueden imprimir algo sin que te enteres.

Ahora, ¿ya te ha quedado claro o necesitas que alguien más te repita lo mismo?

Por eso es importante conocer el mensaje de error completo.

__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 20/04/2015, 12:39
Avatar de NSD
NSD
Colaborador
 
Fecha de Ingreso: mayo-2012
Ubicación: Somewhere
Mensajes: 1.332
Antigüedad: 12 años, 7 meses
Puntos: 320
Respuesta: Mostrar barcode

El problema de mostrar códigos de barra se puede resolver con simple css y una tipografía como esta, no es necesario php.
__________________
Maratón de desafíos PHP Junio - Agosto 2015 en FDW | Reglamento - Desafios
  #6 (permalink)  
Antiguo 20/04/2015, 13:11
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 11 años, 5 meses
Puntos: 379
Respuesta: Mostrar barcode

Cita:
Ahora, ¿ya te ha quedado claro o necesitas que alguien más te repita lo mismo?

Por eso es importante conocer el mensaje de error completo.
Espero que este Bullying sea una lección de vida para ti y en lo futuro no publiques una pregunta sin los errores debidamente documentados.
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #7 (permalink)  
Antiguo 20/04/2015, 13:50
Avatar de ricardo_tu  
Fecha de Ingreso: noviembre-2010
Ubicación: Mas aca del mas alla
Mensajes: 222
Antigüedad: 14 años
Puntos: 32
Respuesta: Mostrar barcode

Me ha quedado clarisimo que la comprension lectora de varios deja muuucho que desear
__________________
La ciencia al poder. Pazciencia ya viene
  #8 (permalink)  
Antiguo 20/04/2015, 13:52
Avatar de ricardo_tu  
Fecha de Ingreso: noviembre-2010
Ubicación: Mas aca del mas alla
Mensajes: 222
Antigüedad: 14 años
Puntos: 32
Respuesta: Mostrar barcode

Cita:
Iniciado por NSD Ver Mensaje
El problema de mostrar códigos de barra se puede resolver con simple css y una tipografía como esta, no es necesario php.
Se agradece, realmente UTIL.
__________________
La ciencia al poder. Pazciencia ya viene
  #9 (permalink)  
Antiguo 20/04/2015, 13:54
Avatar de ricardo_tu  
Fecha de Ingreso: noviembre-2010
Ubicación: Mas aca del mas alla
Mensajes: 222
Antigüedad: 14 años
Puntos: 32
Respuesta: Mostrar barcode

Cita:
Iniciado por hhs Ver Mensaje
Espero que este Bullying sea una lección de vida para ti y en lo futuro no publiques una pregunta sin los errores debidamente documentados.
Ohhh graciassss, mi vida ha cambiado he visto la luzzzzzzz. (¿se entiende o son demasiadas letras?)
__________________
La ciencia al poder. Pazciencia ya viene
  #10 (permalink)  
Antiguo 20/04/2015, 14:18
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 11 años, 5 meses
Puntos: 379
Respuesta: Mostrar barcode

Cita:
Iniciado por ricardo_tu Ver Mensaje
Ohhh graciassss, mi vida ha cambiado he visto la luzzzzzzz. (¿se entiende o son demasiadas letras?)
Lo sé, no tienes que agradecer, ahora ve en paz y lanza unas cuantas lineas de código por mi
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #11 (permalink)  
Antiguo 20/04/2015, 17:24
Avatar de ricardo_tu  
Fecha de Ingreso: noviembre-2010
Ubicación: Mas aca del mas alla
Mensajes: 222
Antigüedad: 14 años
Puntos: 32
Respuesta: Mostrar barcode

Cita:
Iniciado por NSD Ver Mensaje
El problema de mostrar códigos de barra se puede resolver con simple css y una tipografía como esta, no es necesario php.
Con CSS funcionó perfecto, aunque la fuente del enlace no es la ideal. Recomiendo code_128, la bajas luego puedes utilizar un servicio como WEBFONT GENERATOR para convertirla a formato eot y con @fontface funciona de maravillas.

Gracias por la idea NSD.
__________________
La ciencia al poder. Pazciencia ya viene

Última edición por ricardo_tu; 20/04/2015 a las 17:29

Etiquetas: barcode
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 23:32.