[PHP] Meter valor de BBDD en pdf

SmirroLL

muy buenas, llevo un rato peleandome con php para poder recoger un valor de una consulta y que te lo muestre en un pdf, parte del codigo es este :


include ("conexion.php");
$link=conectarse();

$numsocio=$_POST['numsocio'];

$nombre="select nombre from filatelica where numsocio='$numsocio'";
$consultanombre=mysql_query($nombre,$link);

$pdf->Cell(0,10,"Número de socio : $numsocio ",0,1);
$pdf->Cell(0,10,"Nombre :  $nombre ",0,1);

numsocio me lo pasa al pdf bien, pero a la hora de poner el nombre no me lo recoge, me lo muestra en blanco o me escribe directamente la consulta en donde se deberia de mostrar la variable.

Esto es lo que me muestra tal y como está el codigo arriba escrito :

Si le meto un $result=mysql_fetch_array($nombre); me dice :

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\filatelia\pdfdetallesocios.php on line 54

Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\filatelia\pdfdetallesocios.php:54) in C:\wamp\www\filatelia\fpdf.php on line 1017
FPDF error: Some data has already been output, can't send PDF file

Alguno sabe qué le pasa a esto? xD

r2d2rigo

Joe macho, a ver si aprendemos a nombrar las variables como es debido porque

$nombre="select nombre from filatelica where numsocio='$numsocio'";
$consultanombre=mysql_query($nombre,$link);

$pdf->Cell(0,10,"Número de socio : $numsocio ",0,1);
$pdf->Cell(0,10,"Nombre : $nombre ",0,1);

Estas llamando a la string del query y al nombre de resultado de la misma manera ($nombre).

Aparte que espero que entre esas lineas falte codigo, porque ahi no hay ni mysql_fetch_array ni nada...

EDIT: bueno, ya que estoy te posteo el codigo tal y como deberia ser...

include ("conexion.php");
$link=conectarse();

$numsocio=$_POST['numsocio'];

$querynombre="select * from filatelica where numsocio='$numsocio'";
$consultanombre=mysql_query($querynombre,$link);

$resultado = mysql_fetch_array($consultanombre);

$pdf->Cell(0,10,"Número de socio : ."$numsocio." ",0,1);
$pdf->Cell(0,10,"Nombre : ".$resultado['nombre']." ",0,1);
SmirroLL

correcto, no lo copie entero y faltaba lo del fetch array, aun asi, al meterle

$sSQL="Select nombre from socios where numsocio='$numsocio'";
$consulta=mysql_query($sSQL,$link);
$result=mysql_fetch_array($consulta);

en el echo $pdf->Cell(0,10,"Nombre : $result ",0,1);

me pone Nombre : Array , sera por otra tonteria? xD

edit, era otra tonteria, muchas gracias artista :)

r2d2rigo

Claro leñe, $result es un array con los campos de la tabla devueltos por el fetch :P

Por eso tienes que especificar a cual de ellos accedes.

PD: por curiosidad, que libreria utilizas para PDF? Porque lo mismo tengo que pelearme con eso algun dia.

SmirroLL

pues... FPDF, lo vimos un dia por encima en clase hace meses y no lo volvimos a mirar, pero ta bien, te resultara bastante sencillo supongo :P

NeB1

no te calfes la cabeza y gasta DOMPDF enserio, es infinitamente más fácil, te traduce código HTML en un pdf. Estuve trabajando para una empresa importante y querían que un programa al final de todo, con un botón convirtiese una barbaridad de cosas en pdf, y empecé a hacer una librería con ayuda del fpdf, pero al final me dí cuenta que era una locura y busqué esta alternativa que me salvó la vida.

Ejemplo!!

LOc0

#6

¡Qué buena esa librería macho ;)! Me la guardo.

Salu2 ;)

9 días después
minipelos

no se, yo toy usando una variante del fpdf con interpretación de html y códigos de barras (que me hacían falta, una combinación un tanto personal de fpdf, pdfb y fpdi)

entre otras modificaciones que tuve que hacerle, y, salvo algunos errores con tamaños y cosas así que cuando tenga tiempo revisaré, ningún problema.

estoy pensando en publicarlo en algun lado en cuanto termine de revisarle varias cosas

Usuarios habituales

  • minipelos
  • LOc0
  • NeB1
  • SmirroLL
  • r2d2rigo