Foros del Web » Programando para Internet » PHP »

Saltar renglon en consultas (imposible?)

Estas en el tema de Saltar renglon en consultas (imposible?) en el foro de PHP en Foros del Web. Buenos días, tengo el siguiente problema, al recuperar una serie de registros de la base de datos necesito lo siguiente primero que nada en la ...
  #1 (permalink)  
Antiguo 13/05/2006, 07:52
 
Fecha de Ingreso: octubre-2004
Mensajes: 79
Antigüedad: 19 años, 5 meses
Puntos: 0
Saltar renglon en consultas (imposible?)

Buenos días, tengo el siguiente problema, al recuperar una serie de registros de la base de datos necesito lo siguiente

primero que nada en la base de datos tengo los siguientes registros

nombre
apellido
alias
edad
sexo
email

el codigo de recuperación dentro de una tabla normalmente sería

Código HTML:
<table><tr><td><?php echo $consulta['nombre']; ?><?php echo $consulta['apellido']; ?><br>
                                  <?php echo $consulta['alias'];?><br>
                                  <br>                                  
                                  <?php echo $consulta['edad'];?><br>
                                  <?php echo $consulta['sexo']; ?> <br>
                                  <?php echo $consulta['email']; ?> </td></tr></table> 
eso me generaría algo como esteo

Perdo Perez
Pedrin

25 años
hombre
[email protected]

lo que busco es lo siguiente, que la consulta siga el criterio de busqueda siguiente:

si no contamos con nombre ni apellido, mostrar el alias, ademas si el nombre es = a ninguno entonces no generar el renglony saltarse al renglon de alias directamente ademas si existe nombre y alias mostrar ambos.

esto escapa a mi capacidad , y llevo un mes intentandolo y nada, algun maestro me puede orientar.

Gracias
  #2 (permalink)  
Antiguo 13/05/2006, 08:45
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
no entendi muy bien lo que necesitas, lo que entendi es que si en la base de datos no exista informacion no imprimir el renglon, en ese caso podrias hacer algo asi

Código PHP:
<table><tr><td>
<?php if (!empty($consulta['nombre'])) { echo $consulta['nombre']."<br>"; } ?>
<?php 
if (!empty($consulta['apellido'])) { echo $consulta['apellido']."<br>"; } ?>
<?php 
if (!empty($consulta['alias'])) { echo $consulta['alias']."<br>"; } ?>
<br>                                  
<?php if (!empty($consulta['edad'])) { echo $consulta['edad']."<br>"; } ?>
<?php 
if (!empty($consulta['sexo'])) { echo $consulta['sexo']."<br>"; } ?>
<?php 
if (!empty($consulta['email'])) { echo $consulta['email']."<br>"; } ?> </td></tr></table>
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #3 (permalink)  
Antiguo 13/05/2006, 08:46
 
Fecha de Ingreso: enero-2005
Mensajes: 115
Antigüedad: 19 años, 2 meses
Puntos: 1
De acuerdo

Es muy facil:
por ejemplo

Código PHP:
 //pequeño ejemplo ...
<table>
while( 
$consulta=mysql_fetch_array($result2)){ //Recuperamos todas las tuplas una a una
   
if($consulta['nombre']!='ninguno'){
      if(empty(
$consulta['nombre']) && empty($consulta['apellido']){
         echo (!empty(
$consulta['alias']) ? '<tr><td>'.$consulta['alias'].'</td></tr>' '');
         echo 
'<tr><td>'.$consulta['edad'].'</td></tr>';
         echo 
'<tr><td>'.$consulta['sexo'].'</td></tr>';
         echo 
'<tr><td>'.$consulta['email'].'</td></tr>';
      }else{
         echo (!empty(
$consulta['nombre']) ? '<tr><td>'.$consulta['nombre'].'</td></tr>' '');
         echo (!empty(
$consulta['apellido']) ? '<tr><td>'.$consulta['apellido'].'</td></tr>' '');
         echo (!empty(
$consulta['alias']) ? '<tr><td>'.$consulta['alias'].'</td></tr>' '');
         echo 
'<tr><td>'.$consulta['edad'].'</td></tr>';
         echo 
'<tr><td>'.$consulta['sexo'].'</td></tr>';
         echo 
'<tr><td>'.$consulta['email'].'</td></tr>';
      }

   }
}
</
table
La consulta a la base de datos es simple, por que estas cosas se tienen que controlar fuera. Tipo : SELECT * FROM nombre_tabla [WHERE criterio/s].
Los corchetes indica que el parametro es opcional.
Nobstante no quedaba muy claro las condiciones exactas para mostrar los datos asi como tampoco que tipo de sentencia SQL utilizas pero si te devuelve todos esos campos por lo que yo he entendido en las condiciones que tenian que mostrar o no mostrar segun si estaba vacio o si era "ninguno", deveria ser algo asi
__________________
SaRvErOk :ojotes:
  #4 (permalink)  
Antiguo 13/05/2006, 08:54
Avatar de ProgramadorMax  
Fecha de Ingreso: diciembre-2003
Ubicación: Ciudad de Mexico.
Mensajes: 47
Antigüedad: 20 años, 3 meses
Puntos: 0
Aqui uso un condicional terciario, parecido a If, solo que mas corto y comodo que la solucion anterior..

Código PHP:
<table>
  <tr>
    <td>
    <? 
    
echo ($consulta['nombre'] && $consulta['apellido']?$consulta['nombre']." ".$consulta['apellido']."<br>":"");
    echo (
$consulta['alias']?$consulta['alias']."<br>":"");
    echo (
$consulta['edad']?$consulta['edad']."<br>":"");
    echo (
$consulta['sexo']?$consulta['sexo']."<br>":"");
    echo (
$consulta['email']$consulta['email']."<br>":"");
    
?>
  </tr>
</table>
Prueba esta solucion...

Saludos
__________________
Tonto es aquel que tiene el conocimiento y no sabe como usarlo...
Solo destripando creo mostruos de soluciones.
  #5 (permalink)  
Antiguo 13/05/2006, 21:24
 
Fecha de Ingreso: octubre-2004
Mensajes: 79
Antigüedad: 19 años, 5 meses
Puntos: 0
Sonrisa Perfeco Gracias

Muy bien Gracias Maestros
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 09:14.