ARTICULOS

Alternar el color de filas en paginación

Autor: Fabian Muller (http://www.webexperto.com) - 04/02/2003

En este artículo mostraremos un listado de registros obtenidos de una base de datos MySQL, y alternaremos los colores de las filas en donde serán impresos. Además, incluiremos una paginación.

Para entederlo mejor, el listado con los colores de las filas alternados quedaría de la siguiente manera:

 

Dentro del while, se debe agregar las siguientes líneas:

if ($colorfila==0){
       $color= "#DEDEBE";
       $colorfila=1;
    }else{
       $color="#F0F0F0";
       $colorfila=0;
    }

El funcionamiento es realmente sencillo, se trata de una variable (colorfila) que contendrá un 0 o 1 como valor, si es igual a 1 va a guardar un color en la variable color, y lo mismo en caso de que el valor sea 0. Luego se cambia el valor de colorfila por el contrario, para que al pasar al siguiente registro, el valor sea el opuesto y se guarde el otro color.

Código completo

alternarcolores.php

<html>
<head>
<title>Alternar el color de las filas en paginación</title>
</head>
<body bgcolor=#FFFFFF>
<?
$base="nombredelabase";
$con=mysql_connect(servidor,usuario,password);
mysql_select_db($base,$con);

if (!isset($pg))
$pg = 0; // $pg es la pagina actual
$cantidad=10; // cantidad de resultados por página
$inicial = $pg * $cantidad;

$pegar = "SELECT * FROM tabla ORDER BY titulo LIMIT $inicial,$cantidad";
$cad = mysql_db_query($base,$pegar) or die (mysql_error());

$contar = "SELECT * FROM tabla ORDER BY titulo";
$contarok= mysql_db_query($base,$contar);
$total_records = mysql_num_rows($contarok);
$pages = intval($total_records / $cantidad);

// Imprimiendo los resultados
echo "<table width='100%'>";

while($array = mysql_fetch_array($cad)) {

   if ($colorfila==0){
       $color= "#DEDEBE";
       $colorfila=1;
    }else{
       $color="#F0F0F0";
       $colorfila=0;
    }

    echo "<tr><td bgcolor='".$color."'><font face='Arial' size='2'>".$array['titulo']."</font></td></tr>";

}
echo "</table>";

// Cerramos la conexión a la base
$con=mysql_close($con);

// Creando los enlaces de paginación
echo "<p>";
if ($pg <> 0)
{
$url = $pg - 1;
echo "<a href='alternarcolores.php?pg=".$url."'>&laquo; Anterior</a>&nbsp;";
}
else {
echo " ";
}

for ($i = 0; $i<($pages + 1); $i++) {
if ($i == $pg) {
echo "<font face=Arial size=2 color=ff0000><b>&nbsp;$i&nbsp;</b></font>";
}
else {
echo "<a href='alternarcolores.php?pg=".$i."'>".$i."</a>&nbsp;";
}
}

if ($pg < $pages) {
$url = $pg + 1;
echo "<a href='alternarcolores.php?pg=".$url."'>Siguiente &raquo;</a>";
}
else {
echo " ";
}
echo "</p>";
?>
</body>
</html>

 

Más artículos sobre PHP

1. Verificar existencia de una URL
2. Optimizar código PHP
3. Resolución: JavaScript a PHP
4. Planificación de un proyecto modular
5. Contador de visitas sin cookies
6. Proteger páginas con password en PHP
7. Instalación de PHP sobre PWS 4.0
8. Modificación de cadenas
9. Creando sitio con forma modular
10. Recomendar a un amigo en php
Más artículos...

Otros artículos...

Usabilidad Tips para el correcto Diseño Web
Flash Efecto Slide
PHP Forzar descarga de archivos
ASP Contando visitantes activos
Java Script Redimensionar tamaño de ventana
Varios Todo sobre los spywares
Marketing Factores para un sitio web exitoso
PHP Resolución: JavaScript a PHP
Java Script Slide show de imágenes
Varios Conexión FTP desde Dreamweaver
Más artículos...