Foros del Web » Programando para Internet » PHP »

Datos de consulta BD en array[mini_APORTE]

Estas en el tema de Datos de consulta BD en array[mini_APORTE] en el foro de PHP en Foros del Web. Buenas, Os dejo un pequeño aporte de como recoger en un array bidimensional los registros de una consulta para luego mostrar los datos con más ...
  #1 (permalink)  
Antiguo 22/04/2010, 11:28
Avatar de santris  
Fecha de Ingreso: agosto-2009
Ubicación: Sant Feliu de Llobregat
Mensajes: 955
Antigüedad: 14 años, 8 meses
Puntos: 66
Datos de consulta BD en array[mini_APORTE]

Buenas,

Os dejo un pequeño aporte de como recoger en un array bidimensional los registros de una consulta para luego mostrar los datos con más flexibilidad.
Evidentemente cada uno ha de valorar los recursos que este tipo de acciones representa.

Espero os sirva de ayuda,
Saludos.

Ver la prueba en: http://www.linkalis.com/galeria/

Código PHP:
//creamos un array bidimensional 
$alimentos=array("frutas"=>array(), "verduras"=>array(), "cereales"=>array());

//realizamos la consulta
$sql="select * from alimentos";//los campos son frutas, verduras, cereales
$query=mysql_query($sql);

//itineramos por la tabla y recogemos los datos en el array $alimentos
while($row=mysql_fetch_array($query)){
$alimentos["frutas"][]=$row["frutas"];
$alimentos["verduras"][]=$row["verduras"];
$alimentos["cereales"][]=$row["cereales"];
}

//mostramos los registros de las frutas
echo "Tenemos las siguientes frutas: ";
foreach(
$alimentos["frutas"] as $frutas){
echo 
$frutas.", ";
}
echo
"Total "count($alimentos["frutas"])." piezas";
echo 
"<br/>";

//mostramos los registros de las verduras
echo "Tenemos las siguientes verduras: ";
foreach(
$alimentos["verduras"] as $frutas){
echo 
$frutas.", ";
}
echo
"Total "count($alimentos["verduras"])." piezas";
echo 
"<br/>";

//mostramos los registros de los cereales
echo "Tenemos los siguientes cereales: ";
foreach(
$alimentos["cereales"] as $frutas){
echo 
$frutas.", ";
}
echo
"Total "count($alimentos["cereales"])." piezas";
echo 
"<br/>";

//mostramos los registros de todos los alimentos
echo "Tenemos los siguientes alimentos:<br/>";
foreach(
$alimentos as $valor){
    foreach(
$valor as $alimento){
        echo 
$alimento.", ";
    }
}
$num=count($alimentosCOUNT_RECURSIVE)-3;
echo
"Total ".$num." piezas"
__________________
Tu álbum de cromos online!!

Última edición por santris; 22/04/2010 a las 15:54
  #2 (permalink)  
Antiguo 22/04/2010, 13:59
Avatar de Carxl
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: Bogotá
Mensajes: 2.993
Antigüedad: 17 años, 8 meses
Puntos: 70
Respuesta: Datos de consulta BD en array[mini_APORTE]

Cita:
Iniciado por santris Ver Mensaje
Código PHP:
//itineramos por la tabla y recogemos los datos en el array $alimentos
$i=0;
while(
$row=mysql_fetch_array($query)){
$alimentos["frutas"][$i]=$row["frutas"];
$alimentos["verduras"][$i]=$row["verduras"];
$alimentos["cereales"][$i]=$row["cereales"];
$i++;

Una sugerencia:

Código PHP:
while($row=mysql_fetch_array($query)){
$alimentos["frutas"][]=$row["frutas"];
$alimentos["verduras"][]=$row["verduras"];
$alimentos["cereales"][]=$row["cereales"];

Puedes evitar usar el incrementador, php lo hace naturalmente por ti.

Saludos
__________________
Hay 10 tipos de personas, los que entienden binario y los que no. (Anónimo)
www.programandoweb.com
  #3 (permalink)  
Antiguo 22/04/2010, 14:05
Avatar de santris  
Fecha de Ingreso: agosto-2009
Ubicación: Sant Feliu de Llobregat
Mensajes: 955
Antigüedad: 14 años, 8 meses
Puntos: 66
Respuesta: Datos de consulta BD en array[mini_APORTE]

Cita:
Iniciado por Carxl Ver Mensaje
Una sugerencia:

Código PHP:
while($row=mysql_fetch_array($query)){
$alimentos["frutas"][]=$row["frutas"];
$alimentos["verduras"][]=$row["verduras"];
$alimentos["cereales"][]=$row["cereales"];

Puedes evitar usar el incrementador, php lo hace naturalmente por ti.

Saludos

Bienvenida sea.

Probado ok, lo cambio en el post inicial.
__________________
Tu álbum de cromos online!!

Última edición por santris; 22/04/2010 a las 15:53

Etiquetas: bd
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 00:40.