El siguiente codigo lo utilizo para paginar:
Código PHP:
<html>
<body>
<?php
$link = mysql_connect("localhost", "root","pass");
mysql_select_db("deffer", $link);
$result = mysql_query("SELECT nick, pass, email FROM usuarios", $link);
$pag = $_GET['pag'];
if (!isset($pag)) $pag = 1; // Por defecto, pagina 1
$result = mysql_query("SELECT COUNT(*) FROM usuarios", $link);
list($total) = mysql_fetch_row($result);
$tampag = 5;
$reg1 = ($pag-1) * $tampag;
$result = mysql_query("SELECT nick, pass, email FROM usuarios LIMIT $reg1, $tampag", $link);
if (mysql_num_rows($result)){
echo "<table border = '1'> \n";
echo "<tr><td>Nick</td><td>Pass</td><td>Email</td></tr> \n";
while ($row = @mysql_fetch_array($result)) {
echo "<tr><td>".$row["nick"]."</td>";
"<td>".$row["pass"].
"</td><td>".$row["email"]."</td></tr> \n";
}
echo "</table> \n";
}
else
echo "¡ No se ha encontrado ningún registro !";
/* Funcion paginar
* actual: Pagina actual
* total: Total de registros
* por_pagina: Registros por pagina
* enlace: Texto del enlace
* Devuelve un texto que representa la paginacion
*/
function paginar($actual, $total, $por_pagina, $enlace) {
$total_paginas = ceil($total/$por_pagina);
$anterior = $actual - 1;
$posterior = $actual + 1;
if ($actual>1)
$texto = "<a href=\"$enlace$anterior\">«</a> ";
else
$texto = "<b>«</b> ";
for ($i=1; $i<$actual; $i++)
$texto .= "<a href=\"$enlace$i\">$i</a> ";
$texto .= "<b>$actual</b> ";
for ($i=$actual+1; $i<=$total_paginas; $i++)
$texto .= "<a href=\"$enlace$i\">$i</a> ";
if ($actual<$total_paginas)
$texto .= "<a href=\"$enlace$posterior\">»</a>";
else
$texto .= "<b>»</b>";
return $texto;
}
echo paginar($pag, $total, $tampag, "clientes.php?pag=");
?>
</body>
</html>
La paginación me funciona perfectamente, mostrandose el total de resltados que quiero por página.
El problema que tengo es que no sé porqué, pero sólo me muestra el primer campo, que en éste caso es nick.
Los demás campos; pass y email no me los muestra y eso que los tengo escritos y todo correctamente.
¿Que sucede para que solo me arroje un campo?
Saludos,