Foros del Web » Programando para Internet » PHP »

No puedo crear un PDF

Estas en el tema de No puedo crear un PDF en el foro de PHP en Foros del Web. Hola chicos/as!!! Tengo un problema al intentar crear un PDF en el cual quiero mostrar unas imagenes seleccionadas y su titulo correspondiente. Antes de entrar ...
  #1 (permalink)  
Antiguo 04/04/2005, 03:18
 
Fecha de Ingreso: marzo-2005
Mensajes: 78
Antigüedad: 12 años, 8 meses
Puntos: 0
Exclamación No puedo crear un PDF

Hola chicos/as!!!

Tengo un problema al intentar crear un PDF en el cual quiero mostrar unas imagenes seleccionadas y su titulo correspondiente. Antes de entrar con el grueso de la información he realizado una prueba simple:

<?
//Conexión con la base de datos
include("../inc.php");

// Enviaremos un PDF
header('Content-type: application/pdf');

// Se va a llamar descarga.pdf
header('Content-Disposition: attachment; filename="descarga.pdf"');
echo "valores de la lista ";
?>
Inicialmente no hay ningun problema pero cuando se tiene que abrir el contenido me dice que el archivo esta dañado o no es un tipo admitido.

Espero que me puedan dar una solución.

Muchas gracias de antemano!!!
  #2 (permalink)  
Antiguo 04/04/2005, 09:30
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 13 años
Puntos: 34
Y el archivo descarga.pdf existe?....por que no podes crear un pdf asi como si fuera un .doc, lo spdf tienen normas que hay que cumplir, para lo cual hay clases para esta tarea, librerias que bienen con php, o usar directamente, si trabajas sobre win objetos COM y algun ainstancia a algun ejecutable que haga la conversion.
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #3 (permalink)  
Antiguo 04/04/2005, 11:03
 
Fecha de Ingreso: agosto-2002
Ubicación: Colón - Entre Rios - Argentina
Mensajes: 647
Antigüedad: 15 años, 4 meses
Puntos: 8
nicolaspar, ese "descarga.pdf" que menciona g_aceituna no necesariamente tiene que existir. Solamente es el nombre de archivo que se especifica en el header() para que el navegador le ponga al archivo.

El Problema, pienso yo...., puede estar en que haces echo "valores de la lista ";....
Y al mismo tiempo le decis al browser que eso es un PDF, pero eso no es PDF, es un texto plano.

A modo de prueba haz... (en ves de ese echo ".....")
Código PHP:
readfile("archivo.pdf");  // asegurate de que sea una ruta a un PDF que si exista 
http://php.net/pdf
Fijate que alli tienes funciones oficiales para crear pdfs "al vuelo".
Y... en el ejemplo 2 tienes algo parecido a lo que te comento....

Saludos
  #4 (permalink)  
Antiguo 04/04/2005, 12:38
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 13 años
Puntos: 34
Cita:
Iniciado por fran86
nicolaspar, ese "descarga.pdf" que menciona g_aceituna no necesariamente tiene que existir. Solamente es el nombre de archivo que se especifica en el header() para que el navegador le ponga al archivo.
Claro, por eso le preguntaba, por que si no existe, un pdf no podes forzarlo de esa manera.
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #5 (permalink)  
Antiguo 05/04/2005, 11:31
 
Fecha de Ingreso: marzo-2005
Mensajes: 78
Antigüedad: 12 años, 8 meses
Puntos: 0
Muchas gracias Nicolaspar y fran86, mañana mismo lo probare y ya os comentare algo
  #6 (permalink)  
Antiguo 06/04/2005, 04:34
 
Fecha de Ingreso: marzo-2005
Mensajes: 78
Antigüedad: 12 años, 8 meses
Puntos: 0
He mirado el ejemplo 2 que haveis comentado. Lo que yo entiendo sobre el código siguiente:
<?php
$len = filesize($filename);
header("Content-type: application/pdf");
header("Content-Length: $len");
header("Content-Disposition: inline; filename=foo.pdf");
readfile($filename);
?>

Es que te crea un fichero PDF "foo.pdf" al vuelo, pero es una copia del fichero que le pasamos dentro de la variable $filename, no?¿

A mi lo que me interesa es crear un fichero PDF al vuelo pero sobre valores que a mi me interesen y sin que esten en otro fichero, me da igual el contenido, pero lo debo generar yo. Esto es posible?¿

Muchas gracias
  #7 (permalink)  
Antiguo 06/04/2005, 07:55
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 13 años
Puntos: 34
NO, con un pDF NO. Tenes que usar alguna classe o alguna dll o mismo objetos com si estas sobre win :
"por que no podes crear un pdf asi como si fuera un .doc, los pdf tienen normas que hay que cumplir, para lo cual hay clases para esta tarea, librerias que bienen con php, o usar directamente, si trabajas sobre win objetos COM y algun ainstancia a algun ejecutable que haga la conversion."
Fijate por ejemplo en http://www.fpdf.org.
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #8 (permalink)  
Antiguo 06/04/2005, 10:51
 
Fecha de Ingreso: agosto-2002
Ubicación: Colón - Entre Rios - Argentina
Mensajes: 647
Antigüedad: 15 años, 4 meses
Puntos: 8
Cita:
Es que te crea un fichero PDF "foo.pdf" al vuelo, pero es una copia del fichero que le pasamos dentro de la variable $filename, no?¿
Asi es...
Ese ejemplo no crea nada, simplemente envia al navegador un PDF (o cualquier otro archivo) para descargar. De esa forma evitas que se abra en la misma ventana.
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 01:53.