Foros del Web » Programando para Internet » PHP »

Como hacer 2 consultas en PHP con MySQL

Estas en el tema de Como hacer 2 consultas en PHP con MySQL en el foro de PHP en Foros del Web. Hola yo otra vez pero es un trabajo importante :) Bueno mi consulta como ven es la siguiente Tengo una tabla llamada pedido y dentro ...
  #1 (permalink)  
Antiguo 11/11/2015, 20:48
 
Fecha de Ingreso: noviembre-2015
Mensajes: 9
Antigüedad: 8 años, 5 meses
Puntos: 0
Como hacer 2 consultas en PHP con MySQL

Hola yo otra vez pero es un trabajo importante :)
Bueno mi consulta como ven es la siguiente
Tengo una tabla llamada pedido y dentro de tengo 2 columnas, una que se llama fecha y la otra precio:
Ya encontré como filtrar por fecha, pero ahora quiero sumar todos los precios de esa consulta.
Si no me dejo entender aqui un ejemplo

Precio Fecha
350 10-Enero
500 15-Enero
250 19-Enero
300 02-Febrero

Quiero seleccionar solo lo de enero, eso ya lo tengo:)
quiero sumar todos los precios solo del mes de enero pero quiero hacer las 2 consultas en 1 sola

Este es el codigo está bien? y donde pondria el $sum para mostrar al final de todos los precios

if($mes==1)
{
$res=mysql_query("SELECT * FROM pedido WHERE fecha_pedido BETWEEN '20150101' AND '20150131'");
$sum=mysql_query("SELECT SUM(precio) from pedido");
$nregistros=mysql_num_rows($res);

if($nregistros==0)
{
echo 'No se encontraron registros para esta busqueda';
}
else
{
echo '<table class="tabla">';
echo '<tr>';
echo '<td>Descripcion</td>';
echo '<td>Cliente</td>';
echo '<td>Precio</td>';
echo '<td>Fecha de Pedido </td>';
echo '<td>Fecha de Entrega</td>';
echo '</tr>';
while($fila=mysql_fetch_row($res)){
echo '<tr>';
echo '<td>'.$fila[1].'</td>';
echo '<td>'.$fila[2].'</td>';
echo '<td>'.$fila[3].'</td>';
echo '<td>'.$fila[4].'</td>';
echo '<td>'.$fila[5].'</td>';
echo '<td>'.$sum.'</td>';
echo '</tr>';
}
echo '</table>';
}
}

Y este es el resultado de la consulta, por cierto esta exportado en excel
quisiera mostrar el total en la tercera columna pero sale Resource id#5

Precio Fecha de Pedido Total
350 01/01/2015 Resource id #5
350 10/01/2015 Resource id #5
350 15/01/2015 Resource id #5
350 31/01/2015 Resource id #5


estoy haciendo en PHP y MySQL. gracias :)

Última edición por kevinlopez; 11/11/2015 a las 21:11
  #2 (permalink)  
Antiguo 11/11/2015, 22:47
 
Fecha de Ingreso: octubre-2015
Ubicación: Puebla, Puebla
Mensajes: 12
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: Como hacer 2 consultas en PHP con MySQL

Hola, creo que puedes poner algo así:

Código PHP:
Ver original
  1. $sum2 = mysql_fetch_row($sum);
  2. while($fila=mysql_fetch_row($res)){
  3. echo '<tr>';
  4. echo '<td>'.$fila[1].'</td>';
  5. echo '<td>'.$fila[2].'</td>';
  6. echo '<td>'.$fila[3].'</td>';
  7. echo '<td>'.$fila[4].'</td>';
  8. echo '<td>'.$fila[5].'</td>';
  9. echo '<td>'.$sum2[0].'</td>';
  10. echo '</tr>';
  11. }


PD: la suma que tienes en tu consulta te arrojaría el total de todos los precios, si solo quieres el del mes de enero deberías poner una restricción como en tu otra consulta.

Código PHP:
Ver original
  1. $sum=mysql_query("SELECT SUM(precio) FROM pedido WHERE fecha_pedido BETWEEN '20150101' AND '20150131'");

Espero funcione :)
¡Saludos!
  #3 (permalink)  
Antiguo 12/11/2015, 00:24
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: Como hacer 2 consultas en PHP con MySQL

Saludo
Pues lo único que hace falta es que $sum se convierta en un fetch,
pues actualmente es un mysql_query y por eso sale el resource id.

Obviamente, como solo trae un dato, no es necesario hacer un while
para este dato, solo con hacer una variable igual al fetch row de sum,
ya se obtiene el valor.

Basta con fijarse en lo que se hace con la primera consulta.
Y ya JEMG002 dejó el ejemplo.
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #4 (permalink)  
Antiguo 12/11/2015, 10:12
 
Fecha de Ingreso: noviembre-2015
Mensajes: 9
Antigüedad: 8 años, 5 meses
Puntos: 0
Respuesta: Como hacer 2 consultas en PHP con MySQL

Muchas gracias, como soy nuevo no entendi muy bien donde ubicar lo que me dijiste JEMG002
Pero ya lo hice y si me salió ahora aunque me sale en todas las filas el total nose si se podrá que salga solo al final de la primera final o después de todas las filas gracias :)
  #5 (permalink)  
Antiguo 12/11/2015, 10:47
 
Fecha de Ingreso: octubre-2015
Ubicación: Puebla, Puebla
Mensajes: 12
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: Como hacer 2 consultas en PHP con MySQL

Hola, para poner el total al final de los registros encontrados (Debajo de ellos) sería así:

Código PHP:
Ver original
  1. $sum2 = mysql_fetch_row($sum);
  2. while($fila=mysql_fetch_row($res)){
  3.    echo '<tr>';
  4.    echo '<td>'.$fila[1].'</td>';
  5.    echo '<td>'.$fila[2].'</td>';
  6.    echo '<td>'.$fila[3].'</td>';
  7.    echo '<td>'.$fila[4].'</td>';
  8.    echo '<td>'.$fila[5].'</td>';
  9.    echo '</tr>';
  10. }
  11. echo '<tr>';
  12. echo '<td>Total: </td>';
  13. echo '<td>'.$sum2[0].'</td>';
  14. echo '</tr>';
  15.  
  16. echo '</table>'


¡Saludos!

Etiquetas: fecha, mysql, tabla
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 13:01.