Foros del Web » Programando para Internet » PHP »

tablas de base de datos

Estas en el tema de tablas de base de datos en el foro de PHP en Foros del Web. Hola a todos. He estado estos dias pensando un algoritmo que resuelva mi problema pero todavia no he dao con el, a ver si me ...
  #1 (permalink)  
Antiguo 20/12/2002, 18:55
Avatar de mariog  
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 195
Antigüedad: 15 años, 1 mes
Puntos: 0
tablas de base de datos

Hola a todos.

He estado estos dias pensando un algoritmo que resuelva mi problema pero todavia no he dao con el, a ver si me podeis hechar una mano.

Tengo las secciones de mi página, y cada seccion tiene una serie de articulos. Estos articulos estan guardados en una tabla de la base de datos que se denomina noticias, y dentro de esta tabla tienen como campos el titulo, la seccion, el texto y la id.

Lo que yo quiero lograr es que pidiendo a la base de datos todos los articulos de una misma seccion, coja y me los meta en tablas de este tipo:
<table>
<tr>
<td>
titulo
</td>
</tr>
<tr>
<td>
texto
</td>
</tr>
</table>

De tal manera que se coloquen una al lao de la otra con el mismo tamaño y que cuando se hallan colocado 3 seguidas las siguientes se coloquen en una fila por debajo de 3 tambien y asi sucesivamente.

Espero que podais dar solucion a mi problema

Un saludo y muchas gracias
  #2 (permalink)  
Antiguo 20/12/2002, 19:57
Avatar de Chaudx  
Fecha de Ingreso: marzo-2002
Ubicación: Quilpué, Chilito lindo
Mensajes: 345
Antigüedad: 15 años, 9 meses
Puntos: 2
puedes hacer algo asi

Código PHP:
//definimos el numero de colunas a mostrar
$limite 3;

$sql "SELECT titulo, texto FROM tabla_noticias";
echo  
"<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\"><tr>";
$result mysql_query($sql);
while ( 
$row mysql_fetch_array($result) )
{
      
        
$a++;
    
echo  
"<td width=\"50%\" valign=\"top\"><b>".$row['titulo']."</b>
              <br>"
.$row['texto']."</td>";
    
    
        if (
$a == $limite)
        {
            
$echo  "</tr>\n<tr>\n";
            
$a=0;
        }
    }
 
$echo "</tr></table>"
La idea acá es el algoritmo: No me fijé en sintaxis, no te Muestra en una fila de tabla el titulo y en otra el texto, pero te muestra titulo en una línea y luego con <br> te muestra el texto debajo.... y así sucesivamente hasta llegar al límite (3), luego cierra la fila de la tabla con </tr>, abre otra fila con <tr>, lleva $a a 0 y empieza el buclé nuevamente...
Espero te sirva de algo...



saludos
__________________
Servicios computacionales
Linux registered User # 306587
Ubuntu user #14563

Última edición por Chaudx; 20/12/2002 a las 20:05
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 10:10.