Foros del Web » Programando para Internet » PHP »

Paginacion

Estas en el tema de Paginacion en el foro de PHP en Foros del Web. hola tengo una duda para mostrar mis datos de la paginacion en 3 columnas en vez de una, tengo esto <table width="450" border="0" cellpadding="0" cellspacing="0"> ...
  #1 (permalink)  
Antiguo 25/07/2003, 16:13
Avatar de Nefertiter  
Fecha de Ingreso: enero-2003
Ubicación: Rosario
Mensajes: 1.316
Antigüedad: 14 años, 11 meses
Puntos: 8
Paginacion

hola tengo una duda para mostrar mis datos de la paginacion en 3 columnas en vez de una,
tengo esto

<table width="450" border="0" cellpadding="0" cellspacing="0">
<?php do { ?>
<tr>
<td>
<a href="<?php echo $row_wallpapers['imgdir'];?>"><img src="<?php echo $row_wallpapers['thumbnail']; ?>" border="0">
</a></td>
</tr>
<tr>
<td><a href="<?php echo $row_wallpapers['imgdir'];?>"><?php echo $row_wallpapers['imgname']; ?> </a></td>
</tr>
<?php } while ($row_wallpapers = mysql_fetch_assoc($wallpapers)); ?>
</table>

hay alguna manera de hacerlo en tres columnas?
por que con ese codigo solo se repetirian las mismas imagnes
  #2 (permalink)  
Antiguo 25/07/2003, 16:36
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 15 años, 10 meses
Puntos: 5
Vamos a analizar la lógica de esta respuesta...

A.- Tu tienes un recordset ($row_wallpapers) que te va a entregar una foto en cada vuelta del loop. OK?

Ejemplo A

Código PHP:
while ($row_wallpapers=mysql_fetch_assoc($wallpapers)){
echo 
$row_wallpapers['imgdir'];




B.- Si quisieras meter cada foto en una fila, sería muy facil, ya que solo debes abrir y cerrar los tags <tr> y <td> antes y despues de cada imagen. OK?

Ejemplo B

Código PHP:
<table>
<?
while ($row_wallpapers=mysql_fetch_assoc($wallpapers)){
echo 
"<tr><td>".$row_wallpapers['imgdir']."</td></tr>";
}
?>
</table>

Vamos bien hasta ahi??

Ahora viene lo interesante...
__________________
Manoloweb
  #3 (permalink)  
Antiguo 25/07/2003, 16:56
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 15 años, 10 meses
Puntos: 5
C.- Ahora quieres partir cada fila en "X" columnas, por lo tanto debes hacer algunos ajustes a este código..., quedando algo similar a lo siguiente:

Código PHP:
<table>
<?
$porcol
=3// Establecemos cuantas columnas queremos
$actual=1//Creamos el marcador que nos indica en que columna estamos
while ($row_wallpapers=mysql_fetch_assoc($wallpapers)){
    if (
$actual==1){ 
        echo 
"<tr>"// Iniciamos una fila al principio de cada ciclo
    

    echo 
"<td>".$row_wallpapers['imgdir']."</td>";
    if (
$actual==$porcol){ 
        echo 
"</tr>"// Cerramos la fila al alcanzar el numero de columnas deseado
        
$actual=0// Bajamos de regreso a 0, ya que en seguida le incrementaremos 1
    

    
$actual++;
}
// Ahora ya lo tienes en las columnas deseadas, solo falta hacer un pequeño
// ajuste para completar la tabla en caso de que hayan quedado celdas
// sin llenar

if ($actual<$porcol){
    for (
$i=$actual;$i<=$porcol;$i++){
        echo 
"<td>&nbsp;</td>";
    }
    echo 
"</tr>";
}
?>
</table>

Listo... como podrás ver no es tan complicado, solo hay que entender muy bien como se comportan los recordsets y la estructura HTML de las tablas...

Saludos!!
__________________
Manoloweb
  #4 (permalink)  
Antiguo 26/07/2003, 16:42
Avatar de Nefertiter  
Fecha de Ingreso: enero-2003
Ubicación: Rosario
Mensajes: 1.316
Antigüedad: 14 años, 11 meses
Puntos: 8
bueno muchas gracias voy a probar el codigo
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 05:15.