Test Foro de elhacker.net SMF 2.1

Programación => Desarrollo Web => PHP => Mensaje iniciado por: Siempre Azul en 28 Octubre 2012, 20:59 PM

Título: ayuda en php con pdf
Publicado por: Siempre Azul en 28 Octubre 2012, 20:59 PM
hola a todos, necesito de su ayuda,como hago para que salga una consulta en PDF, osea que muestre primero la consulta y despues mas abajo tenga un boton que diga "descargar" y se descarge la consulta en PDF , aqui mi codigo:
<?php

/******** CONECTAR CON BASE DE DATOS **************** */ 
   
$con mysql_connect("localhost","root","123456");
   if (!
$con){die('ERROR DE CONEXION CON MYSQL: ' mysql_error());} 
/* ********************************************** */

/********* CONECTA CON LA BASE DE DATOS  **************** */
   
$database mysql_select_db("conexion",$con);
   if (!
$database){die('ERROR CONEXION CON BD: '.mysql_error());}
/* ********************************************** */

//ejecutamos la consulta
$sql "SELECT nombre, estado FROM repara WHERE codigo='"
      
.$_POST['codigo']."'";
$result mysql_query ($sql);
// verificamos que no haya error 
if (! $result){
   echo 
"La consulta SQL contiene errores.".mysql_error();
   exit();
}else {
    echo 
"<table border='1'><tr><td>Nombre y Apellido</td><td>Estado</td>
         </tr><tr>"
;
//obtenemos los datos resultado de la consulta 
    
while ($row mysql_fetch_row($result)){
echo "<td>".$row[0]."</td><td>".$row[1]."</td>
              <td>"
.$row[2]."</td>";
    }
    echo 
"</tr></table>";
 }
?>
 
Título: Re: ayuda en php con pdf
Publicado por: wirelesswifi en 28 Octubre 2012, 22:21 PM
Hola, tendrias que consultar el pdf desde la base de datos, la url del pdf la buscas por la base de datos y la muestras con object pdf desde la url.

Para descargarlo mostrarias el enlace del pdf con un a href

Saludos!
Título: Re: ayuda en php con pdf
Publicado por: Siempre Azul en 28 Octubre 2012, 22:32 PM
Cita de: wirelesswifi en 28 Octubre 2012, 22:21 PM
Hola, tendrias que consultar el pdf desde la base de datos, la url del pdf la buscas por la base de datos y la muestras con object pdf desde la url.

Para descargarlo mostrarias el enlace del pdf con un a href

Saludos!

ni idea de como hacer todo eso....
Título: Re: ayuda en php con pdf
Publicado por: wirelesswifi en 28 Octubre 2012, 23:10 PM
Algo asi:

Código (php) [Seleccionar]
<?php

/******** CONECTAR CON BASE DE DATOS **************** */ 
   
$con mysql_connect("localhost","root","123456");
   if (!
$con){die('ERROR DE CONEXION CON MYSQL: ' mysql_error());} 
/* ********************************************** */

/********* CONECTA CON LA BASE DE DATOS  **************** */
   
$database mysql_select_db("conexion",$con);
   if (!
$database){die('ERROR CONEXION CON BD: '.mysql_error());}
/* ********************************************** */

//ejecutamos la consulta
$sql "SELECT nombre, estado, url FROM repara WHERE codigo='"
      
.$_POST['codigo']."'";
$result mysql_query ($sql);
// verificamos que no haya error 
if (! $result){
   echo 
"La consulta SQL contiene errores.".mysql_error();
   exit();
}else {
    echo 
"<table border='1'><tr><td>Nombre y Apellido</td><td>Estado</td><td>PDF</td>
         </tr><tr>"
;
//obtenemos los datos resultado de la consulta 
    
while ($row mysql_fetch_row($result)){
echo "<td>".$row[0]."</td><td>".$row[1]."</td>
              <td><object type='application/pdf' data='"
.$row[2]."#toolbar=1&amp;navpanes=0&amp;scrollbar=1' width='900' height='500'><param name='src' value='".$row[2]."#toolbar=1&amp;navpanes=0&amp;scrollbar=1' /></object></td>
  <tr><td>Descarga</td><td><a href='"
.$row[2]."' target='_blank' />Descarga</a></td></tr>";

    }
    echo 
"</tr></table>";
 }
?>
Título: Re: ayuda en php con pdf
Publicado por: Siempre Azul en 29 Octubre 2012, 00:53 AM
Cita de: wirelesswifi en 28 Octubre 2012, 23:10 PM
Algo asi:

Código (php) [Seleccionar]
<?php

/******** CONECTAR CON BASE DE DATOS **************** */ 
   
$con mysql_connect("localhost","root","123456");
   if (!
$con){die('ERROR DE CONEXION CON MYSQL: ' mysql_error());} 
/* ********************************************** */

/********* CONECTA CON LA BASE DE DATOS  **************** */
   
$database mysql_select_db("conexion",$con);
   if (!
$database){die('ERROR CONEXION CON BD: '.mysql_error());}
/* ********************************************** */

//ejecutamos la consulta
$sql "SELECT nombre, estado, url FROM repara WHERE codigo='"
      
.$_POST['codigo']."'";
$result mysql_query ($sql);
// verificamos que no haya error 
if (! $result){
   echo 
"La consulta SQL contiene errores.".mysql_error();
   exit();
}else {
    echo 
"<table border='1'><tr><td>Nombre y Apellido</td><td>Estado</td><td>PDF</td>
         </tr><tr>"
;
//obtenemos los datos resultado de la consulta 
    
while ($row mysql_fetch_row($result)){
echo "<td>".$row[0]."</td><td>".$row[1]."</td>
              <td><object type='application/pdf' data='"
.$row[2]."#toolbar=1&amp;navpanes=0&amp;scrollbar=1' width='900' height='500'><param name='src' value='".$row[2]."#toolbar=1&amp;navpanes=0&amp;scrollbar=1' /></object></td>
  <tr><td>Descarga</td><td><a href='"
.$row[2]."' target='_blank' />Descarga</a></td></tr>";

    }
    echo 
"</tr></table>";
 }
?>

no se descarga nada...
Título: Re: ayuda en php con pdf
Publicado por: wirelesswifi en 29 Octubre 2012, 02:13 AM
Cita de: shitoman en 29 Octubre 2012, 00:53 AM
no se descarga nada...

Tendrias que descargarlo por

header("Content-type: application/octet-stream");

Y forzar la descarga del archivo

Saludos!
Título: Re: ayuda en php con pdf
Publicado por: Siempre Azul en 29 Octubre 2012, 02:35 AM
Cita de: wirelesswifi en 29 Octubre 2012, 02:13 AM
Tendrias que descargarlo por

header("Content-type: application/octet-stream");

Y forzar la descarga del archivo

Saludos!

y como implemento eso en mi codigo??
Título: Re: ayuda en php con pdf
Publicado por: wirelesswifi en 29 Octubre 2012, 03:39 AM
Cita de: shitoman en 29 Octubre 2012, 02:35 AM
y como implemento eso en mi codigo??

Envias el id donde esta el pdf por get y lo descargas.

header("Content-type: application/application/octet-stream");
header("Content-Disposition: attachment; filename=archivo.pdf");


Código (php) [Seleccionar]
<?php
/******** CONECTAR CON BASE DE DATOS **************** */ 
   
$con mysql_connect("localhost","root","123456");
   if (!
$con){die('ERROR DE CONEXION CON MYSQL: ' mysql_error());} 
/* ********************************************** */

/********* CONECTA CON LA BASE DE DATOS  **************** */
   
$database mysql_select_db("conexion",$con);
   if (!
$database){die('ERROR CONEXION CON BD: '.mysql_error());}
/* ********************************************** */

//ejecutamos la consulta
$sql "SELECT nombre, estado, url FROM repara WHERE codigo='"
      
.$_GET['codigo']."'";
$result mysql_query ($sql);
    while (
$row mysql_fetch_row($result)){
header("Content-type: application/application/octet-stream");
header("Content-Disposition: attachment; filename=".$row[2]."");
    }
?>
Título: Re: ayuda en php con pdf
Publicado por: Siempre Azul en 29 Octubre 2012, 22:18 PM
sigue igual,no me descarga nada
Título: Re: ayuda en php con pdf
Publicado por: wirelesswifi en 29 Octubre 2012, 22:31 PM
Creaste la columna url e insertaste un enlace de pdf?

O ya tienes creada la columna url?
Título: Re: ayuda en php con pdf
Publicado por: Siempre Azul en 30 Octubre 2012, 13:57 PM
no se que url debo poner, lo que yo quiero es que el resultado de la consulta se convierta en pdf y pueda descargarlo cuando presione el boton "descargar"
Título: Re: ayuda en php con pdf
Publicado por: wirelesswifi en 30 Octubre 2012, 15:19 PM
Cita de: shitoman en 30 Octubre 2012, 13:57 PM
no se que url debo poner, lo que yo quiero es que el resultado de la consulta se convierta en pdf y pueda descargarlo cuando presione el boton "descargar"

en tu base de datos tienes creada una tabla llamada "repara" la cual contiene estos datos:

codigo   1
nombre Pepe
estado  Activo
url         http://www.nuso.org/upload/articulos/3699_1.pdf

Mas el codigo que te he puesto:

Te dejo el codigo por POST

consulta.html

Código (html4strict) [Seleccionar]
<form action="pdf.php" method="POST">
Codigo : <input name="codigo" type="text"><br />
<input type="Submit" value="Consultar">


pdf.php

Código (php) [Seleccionar]
<?php
 
/******** CONECTAR CON BASE DE DATOS **************** */ 
   
$con mysql_connect("localhost","root","123456");
   if (!
$con){die('ERROR DE CONEXION CON MYSQL: ' mysql_error());} 
/* ********************************************** */
 
/********* CONECTA CON LA BASE DE DATOS  **************** */
   
$database mysql_select_db("conexion",$con);
   if (!
$database){die('ERROR CONEXION CON BD: '.mysql_error());}
/* ********************************************** */

//ejecutamos la consulta
$sql "SELECT nombre, estado, url FROM repara WHERE codigo='"
      
.$_POST['codigo']."'";
$result mysql_query ($sql);
// verificamos que no haya error 
if (! $result){
   echo 
"La consulta SQL contiene errores.".mysql_error();
   exit();
}else {
    echo 
"<table border='1'><tr><td>Nombre y Apellido</td><td>Estado</td><td>PDF</td>
         </tr><tr>"
;
//obtenemos los datos resultado de la consulta 
    
while ($row mysql_fetch_row($result)){
echo "<td>".$row[0]."</td><td>".$row[1]."</td>
              <td><object type='application/pdf' data='"
.$row[2]."#toolbar=1&amp;navpanes=0&amp;scrollbar=1' width='900' height='500'><param name='src' value='".$row[2]."#toolbar=1&amp;navpanes=0&amp;scrollbar=1' /></object></td>
  <tr><td>Descarga</td><td><a href='"
.$row[2]."' target='_blank' />Descarga</a></td></tr>";
 
    }
    echo 
"</tr></table>";
 }
?>



Tienes que pedir la consulta por POST, insertando el codigo de un pdf, para que te muestre el PDF y la consulta de mysql
Título: Re: ayuda en php con pdf
Publicado por: Siempre Azul en 30 Octubre 2012, 15:46 PM
amigo no me entendiste, no que me muestre cualquier PDF, que me muestre el resultado de mi consulta en PDF,

por ejemplo:


codigo   1
nombre Pepe
estado  Activo

boton descargar->y se descarga el PDF con los datos de:

codigo   1
nombre Pepe
estado  Activo

ahora si entiendes?
Título: Re: ayuda en php con pdf
Publicado por: wirelesswifi en 30 Octubre 2012, 15:51 PM
Ok, tendrias que pasar la consulta a PDF.

Aqui hay informacion:

http://blog.unijimpe.net/generar-pdf-con-php/

Tu codigo quedaria:

Código (php) [Seleccionar]
<?php
include ('class.ezpdf.php');

/******** CONECTAR CON BASE DE DATOS **************** */ 
   
$con mysql_connect("localhost","root","123456");
   if (!
$con){die('ERROR DE CONEXION CON MYSQL: ' mysql_error());} 
/* ********************************************** */
 
/********* CONECTA CON LA BASE DE DATOS  **************** */
   
$database mysql_select_db("conexion",$con);
   if (!
$database){die('ERROR CONEXION CON BD: '.mysql_error());}
/* ********************************************** */

//ejecutamos la consulta
$sql "SELECT codigo, nombre, estado FROM repara WHERE codigo='"
      
.$_POST['codigo']."'";
$result mysql_query ($sql);
// verificamos que no haya error 
if (! $result){
   echo 
"La consulta SQL contiene errores.".mysql_error();
   exit();

}else {
    while (
$row mysql_fetch_row($result)){
$pdf = new Cezpdf();
$pdf->ezText("Codigo: $row[0]"12);
$pdf->ezText("Nombre: $row[1]"12);
$pdf->ezText("Estado: $row[2]"12);
$pdf->ezStream();
    }
 }

?>


Nombra el codigo que puse: pdf.php

En el mismo directorio de este codigo, insertas:

class.ezpdf.php
class.pdf.php
y la carpeta fonts

Que estan en el zip de la web:

http://blog.unijimpe.net/generar-pdf-con-php/
Título: Re: ayuda en php con pdf
Publicado por: Siempre Azul en 30 Octubre 2012, 16:34 PM
ya habia leido eso antes y no entiendo como implementarlo