Foros del Web » Programando para Internet » PHP »

pdf desde la DB

Estas en el tema de pdf desde la DB en el foro de PHP en Foros del Web. Alguna idea de como descargar un pdf desde la DB, lo hcie con un codigo, pero esto me muestra el codigo binario en la pagina ...
  #1 (permalink)  
Antiguo 26/08/2007, 15:43
 
Fecha de Ingreso: septiembre-2003
Mensajes: 384
Antigüedad: 20 años, 7 meses
Puntos: 0
pdf desde la DB

Alguna idea de como descargar un pdf desde la DB, lo hcie con un codigo, pero esto me muestra el codigo binario en la pagina

Código PHP:
<?php 
if(isset($_GET['id'])) { 
//establece una conexión con la base de datos. 
$db_conn mysql_connect('localhost','root','');
$db_c mysql_select_db('puragua_development',$db_conn);
$sql "SELECT data,content_type FROM archivos WHERE id=108"
#producto_id='".$_GET['id']."' AND content_type LIKE '%pdf%'
echo $sql;
$consulta mysql_query($sql,$db_conn); 

$datos mysql_result($consulta,0,"data");
$tipo mysql_result($consulta,0,"content_type");
$nombre mysql_result($consulta,0,"nombre");
//$peso = mysql_result($consulta,0,"archivo_peso");
// header("Content-length: $peso"); 
header("Content-type: $tipo");
header("Content-Disposition: inline; filename=$nombre"); 
 
   echo 
$datos; } 
?>
help pliss :P
__________________
-----------------------------
Edgar Gonzalez
  #2 (permalink)  
Antiguo 26/08/2007, 21:15
 
Fecha de Ingreso: septiembre-2003
Mensajes: 384
Antigüedad: 20 años, 7 meses
Puntos: 0
Re: pdf desde la DB

help plisss :P
__________________
-----------------------------
Edgar Gonzalez
  #3 (permalink)  
Antiguo 26/08/2007, 23:00
Avatar de Hazek  
Fecha de Ingreso: julio-2002
Ubicación: En mi casa :D ó ?
Mensajes: 418
Antigüedad: 21 años, 9 meses
Puntos: 3
Re: pdf desde la DB

Cita:
Iniciado por eagoweb2 Ver Mensaje
Alguna idea de como descargar un pdf desde la DB, lo hcie con un codigo, pero esto me muestra el codigo binario en la pagina

Código PHP:
<?php 
if(isset($_GET['id'])) { 
//establece una conexión con la base de datos. 
$db_conn mysql_connect('localhost','root','');
$db_c mysql_select_db('puragua_development',$db_conn);
$sql "SELECT data,content_type FROM archivos WHERE id=108"
#producto_id='".$_GET['id']."' AND content_type LIKE '%pdf%'
echo $sql;
$consulta mysql_query($sql,$db_conn); 

$datos mysql_result($consulta,0,"data");
$tipo mysql_result($consulta,0,"content_type");
$nombre mysql_result($consulta,0,"nombre");
//$peso = mysql_result($consulta,0,"archivo_peso");
// header("Content-length: $peso"); 
header("Content-type: $tipo");
header("Content-Disposition: inline; filename=$nombre"); 
 
   echo 
$datos; } 
?>
help pliss :P

Por que no pruebas FPDF http://www.fpdf.org/ , sirve para generar PFD y es gratuito, claro no sera el mejor pero si lo que deseas una solucion aceptable y gratuita es altamente recomendable.

Una vez que lo hayas bajado y descomprimido un ejemplo para generar un pdf con los datos que solicitas seria:

<?php
require('fpdf.php');

if(isset($_GET['id']))
{
//establece una conexión con la base de datos.
$db_conn = mysql_connect('localhost','root','');
$db_c = mysql_select_db('puragua_development',$db_conn);
$sql = "SELECT data,content_type FROM archivos WHERE id=108";
#producto_id='".$_GET['id']."' AND content_type LIKE '%pdf%'

$consulta = mysql_query($sql,$db_conn);

$datos = mysql_result($consulta,0,"data");
$tipo = mysql_result($consulta,0,"content_type");
$nombre = mysql_result($consulta,0,"nombre");


$pdf=new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',14);

$pdf->Cell(150,10,'Tipo: ' . $tipo . 'Datos: ' . $datos . 'Nombre: ' . $nombre,0,1,'C');


$pdf->Output();


?>


Te aconsejo que si te decides por FPDF leas los ejemplos que vienen cuando lo descargas para que entiendas los argumentos de cada metodo y varias cosas mas .
Por cierto, no uses echos, bueno insisto mejor lee bien como trabajar con FPDF.
__________________
Tecnologias: Flash Platform, Java (Spring, HB, Struts, Grails), iOS, Android, JavaScript, PHP, SQL (MySQL, Oracle), Prolog, Assembler (PIC's) y Arduino - Electronica.

Última edición por Hazek; 26/08/2007 a las 23:13
  #4 (permalink)  
Antiguo 26/08/2007, 23:02
Avatar de Hazek  
Fecha de Ingreso: julio-2002
Ubicación: En mi casa :D ó ?
Mensajes: 418
Antigüedad: 21 años, 9 meses
Puntos: 3
Re: pdf desde la DB

Sorry, se repitio el tema, edito este para evitar confusiones.
__________________
Tecnologias: Flash Platform, Java (Spring, HB, Struts, Grails), iOS, Android, JavaScript, PHP, SQL (MySQL, Oracle), Prolog, Assembler (PIC's) y Arduino - Electronica.
  #5 (permalink)  
Antiguo 27/08/2007, 07:17
 
Fecha de Ingreso: septiembre-2003
Mensajes: 384
Antigüedad: 20 años, 7 meses
Puntos: 0
Re: pdf desde la DB

Gracias Hzek, aún tengo problemas, el fpdf no me funciona porque no necesito convertir data a pdf, sinó convertir archivos binarios guardados en la DB. Es decir en la base de datos tengo los pdfs guardados.

me da este error

Código PHP:
ELECT data,content_type,nombre FROM archivos WHERE id=108
Warning
Cannot modify header information headers already sent by (output started at D:wwwpuragua2verPdf.php:10in D:wwwpuragua2verPdf.php on line 18

Warning
Cannot modify header information headers already sent by (output started at D:wwwpuragua2verPdf.php:10in D:wwwpuragua2verPdf.php on line 19 
y luego de esos errores me presenta el codigo binario del pdf
__________________
-----------------------------
Edgar Gonzalez
  #6 (permalink)  
Antiguo 27/08/2007, 08:15
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: pdf desde la DB

Tu problema es que pones:
Código PHP:
echo $sql
Con eso estas enviando salida al explorador por lo que ya no puedes enviar entonces cabeceras y por ende no puedes descargar el PDF.

Saludos.
  #7 (permalink)  
Antiguo 27/08/2007, 10:41
 
Fecha de Ingreso: septiembre-2003
Mensajes: 384
Antigüedad: 20 años, 7 meses
Puntos: 0
Re: pdf desde la DB

No entendí, lo que hago es poner echo $datos
__________________
-----------------------------
Edgar Gonzalez
  #8 (permalink)  
Antiguo 27/08/2007, 10:47
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: pdf desde la DB

Pero mas arriba haces un echo $sql; (yo me supongo que para ver que la consulta se genera bien), tienes que quitar ese echo para que no se envie nada al explorador.

Saludos.
  #9 (permalink)  
Antiguo 27/08/2007, 13:01
 
Fecha de Ingreso: septiembre-2003
Mensajes: 384
Antigüedad: 20 años, 7 meses
Puntos: 0
Re: pdf desde la DB

wao! ehheheheh, gracias viejo, exactamente ni me recordaba de ese echo.

muchas gracias, era lo unico que me faltaba de este proyectico.
saludos
__________________
-----------------------------
Edgar Gonzalez
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 21:02.