Ver Mensaje Individual
  #2 (permalink)  
Antiguo 23/02/2014, 18:09
Avatar de Triby
Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 4 meses
Puntos: 2237
Respuesta: mostrar los datos de una consulta en factura en pdf

No es necesario que recorras los resultados por número de filas, es tan fácil como:

Código PHP:
Ver original
  1. $consulta1 = "Select * from orders,order_items where orders.orderid=order_items.orderid and orders.customerid='$codfactura'";
  2.     $r=mysql_query($consulta1,$c) or die (mysql_error());
  3.  
  4.     // En vez de contar las filas (porque no haces nada con ellas)
  5.     // Recorre directamente los resultados
  6.     while($row = mysql_fetch_assoc($r)) {
  7.          $codlibro = $row['isbn'];
  8.          // Aquí haces la consulta para leer el libro
  9.          // Y actualizas el PDF
  10.     }

Por cierto, la librería mysql es obsoleta y va a desaparecer en Php 5.5, por lo que deberías cambiar a mysqli o PDO.

También, no veo necesario hacer dos consultas si puedes hacer todo solo con JOIN, ejemplo:

Código SQL:
Ver original
  1. SELECT o.*, oi.*, a.* FROM orders o
  2. JOIN order_items oi ON o.orderid = oi.orderid
  3. JOIN articulos a ON oi.isbn = a.isbn
  4. WHERE o.customerid = 'xxxx'

o = Alias para la tabla orders
oi = Alias para la tabla order_items
a = Alias para la tabla articulos
'xxxx' = Reemplázalo por el valor adecuado

Con esta consulta será suficiente para completar el ejemplo que puse al principio, todos los datos estarán en $row['nombre_de_campo']

P.D. Parece que el problema original es que no estás avanzando el apuntador para acceder al juego de resultados y esto es causado por usar mysql_result() en lugar de mysql_fetch_****() que lee la fila actual y avanza el apuntador automáticamente
__________________
- León, Guanajuato
- GV-Foto