Foros del Web » Programando para Internet » PHP »

Tabla PHP muestre datos especificos

Estas en el tema de Tabla PHP muestre datos especificos en el foro de PHP en Foros del Web. Hola gente, aca estoy de nuevo con otro problema. Tengo que hacer una tabla la cual traiga datos de un formulario (Nombre, Apellido, Edad, Ciudad) ...
  #1 (permalink)  
Antiguo 07/05/2012, 14:26
 
Fecha de Ingreso: abril-2012
Mensajes: 36
Antigüedad: 12 años
Puntos: 1
Tabla PHP muestre datos especificos

Hola gente, aca estoy de nuevo con otro problema.

Tengo que hacer una tabla la cual traiga datos de un formulario (Nombre, Apellido, Edad, Ciudad) y los ordene en la misma tabla.

La tabla principal que muestra todos los datos la hice asi.

Formulario:
Código PHP:
Ver original
  1. <form id="form1" name="form1" method="post" action="bdsimple.php">
  2.   <p><h3><strong>Ingrese los siguientes datos
  3.   </strong></h3></p>
  4.   <p>
  5.     <label for="nombre">Nombre:</label>
  6.     <input type="text" name="nombre" id="nombre" />
  7.   </p>
  8.   <p>
  9.     <label for="apellido">Apellido:</label>
  10.     <input type="text" name="apellido" id="apellido" />
  11.   </p>
  12.   <p>
  13.     <label for="edad">Edad:</label>
  14.     <input type="text" name="edad" id="edad" />
  15.   </p>
  16.   <p>
  17.     <label for="ciudad">Ciudad:</label>
  18.     <input type="text" name="ciudad" id="ciudad" />
  19.   </p>
  20.   <p>
  21.     <input type="submit" name="button" id="button" value="Enviar" />
  22.   </p>
  23. </form>

Base de datos:
Código PHP:
Ver original
  1. <?php
  2. $nombre=$_POST['nombre'];
  3. $apellido=$_POST['apellido'];
  4. $edad=$_POST['edad'];
  5. $ciudad=$_POST['ciudad'];
  6.  
  7. if(file_exists("bd.txt")){
  8.     $bd=unserialize(file_get_contents("bd.txt"));
  9. }
  10.     $registro=array();
  11.     $registro['nombre']=$nombre;
  12.     $registro['apellido']=$apellido;
  13.     $registro['edad']=$edad;
  14.     $registro['ciudad']=$ciudad;
  15.    
  16.     $bd[]=$registro;
  17.     file_put_contents("bd.txt",serialize($bd));
  18.  
  19. ?>
  20.  
  21. </p>
  22. <form id="form1" name="form1" method="post" action="tabla1.php">
  23.   <input type="submit" name="button" id="button" value="Ver tabla" />
  24. </form>
  25. <p>&nbsp;</p>

Tabla:

Código PHP:
Ver original
  1. <?php
  2. ?>
  3. <body>
  4. <table width="500" border="1">
  5. <tr>
  6.     <td bgcolor="#666666">ID</td>
  7.     <td bgcolor="#666666">Nombre</td>
  8.     <td bgcolor="#666666">Apellido</td>
  9.     <td bgcolor="#666666">Edad</td>
  10.     <td bgcolor="#666666">Ciudad</td>
  11. </tr>
  12. <?php
  13. foreach($bd as $clave=>$registro){
  14. ?>
  15. <tr>
  16.     <td bgcolor="#999999"><?php echo $clave ?></td>
  17.     <td><?php echo $registro['nombre'] ?></td>
  18.     <td><?php echo $registro['apellido'] ?></td>
  19.     <td><?php echo $registro['edad'] ?></td>
  20.     <td><?php echo $registro['ciudad'] ?></td>
  21. </tr>
  22. <?php } ?>
  23. </table>

Pero ahora tengo que hacer 2 tablas mas, en una que muestre solo los mayores de 30 años y otra solo los de la ciudad Mar del Plata.

Como puedo hacer usando recursos basicos?
  #2 (permalink)  
Antiguo 07/05/2012, 14:32
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años
Puntos: 528
Respuesta: Tabla PHP muestre datos especificos

Pues to que tu base de datos es un archivo te será más difícil que con una base de datos tipo mysql. El arreglo que obtienes después de des serializar tu archivo lo debes ordenar según tus requerimientos, para lo cual tienes varias funciones de ordenamiento de arreglos en php, como sort, asort, ksort etc.

Y desde luego, también tendrás que recorrer tu arreglo para ir filtrando cuáles colocar en una tabla y cuáles en otra.
  #3 (permalink)  
Antiguo 07/05/2012, 14:45
 
Fecha de Ingreso: abril-2012
Mensajes: 36
Antigüedad: 12 años
Puntos: 1
Respuesta: Tabla PHP muestre datos especificos

Mala mia, era muy sencillo por suerte.

Igual me olvide de mencionar que era en 3 tablas diferentes.

Para la tabla de mayores de 30 solo agregue:

Código PHP:
Ver original
  1. <?php
  2. foreach($bd as $clave=>$registro){
  3.     if($registro['edad']>=30){
  4. ?>

y para la de solo de Mar del Plata agregue

Código PHP:
Ver original
  1. <?php
  2. foreach($bd as $clave=>$registro){
  3.     if($registro['ciudad']=="Mar del Plata"){
  4. ?>
  #4 (permalink)  
Antiguo 07/05/2012, 14:51
Avatar de xIamAlex  
Fecha de Ingreso: abril-2012
Ubicación: Venezuela
Mensajes: 118
Antigüedad: 12 años
Puntos: 23
Respuesta: Tabla PHP muestre datos especificos

Pues crea una conexión mysql de esta manera:

Código:
$mayores_de_30 = mysql_query("SELECT * FROM nombre_de_tu_tabla WHERE edad >= 30", $tu_variable_conexion);

$mar_de_plata = mysql_query("SELECT * FROM nombre_de_tu_tabla WHERE ciudad = 'Mar de Plata'", $tu_variable_conexion);

$por_edad = mysql_fetch_array($mayores_de_30);
$por_ciudad = mysql_fetch_array($mar_de_plata);
Luego los presentas de la siguiente manera:

Código:
// Para edad:

do {

echo 'Nombre: ', $por_edad['nombre'], '<br />
Apellido: ', $por_edad['apellido'], '<br />
Edad: ', $por_edad['edad'], '<br />
Ciudad: ', $por_edad['ciudad'], '<br /><br />';


} while($por_edad = mysql_fetch_array($mayores_de_30))

// Para ciudad:

do {

echo 'Nombre: ', $mar_de_plata['nombre'], '<br />
Apellido: ', $mar_de_plata['apellido'], '<br />
Edad: ', $mar_de_plata['edad'], '<br />
Ciudad: ', $mar_de_plata['ciudad'], '<br /><br />';


} while($por_ciudad = mysql_fetch_array($mar_de_plata))
__________________
Las personas quieren autos, casas, teléfonos, dinero, poder, ser famosos, parejas, en fin.. yo solo quiero ser libre y feliz.

Etiquetas: formulario, registro, 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 09:27.