No amigo, para eso puedes usar una paginacion. En google puedes encontrar classes muy buenas, una de ellas se llama paginator.class
Buscala y nos cuentas.
Nota: Hacer una paginacion con PHP es mas facil de lo que parece.
Por ejemplo
paginator.js
Código Javascript
:
Ver originalfunction objetoAjax(){
var xmlhttp=false;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
function Pagina(nropagina){
//donde se mostrará los registros
divContenido = document.getElementById('paginator');
ajax=objetoAjax();
//uso del medoto GET
//indicamos el archivo que realizará el proceso de paginar
//junto con un valor que representa el nro de pagina
ajax.open("GET", "./paginator.php?pag="+nropagina);
divContenido.innerHTML= '<img src="imagen_de_carga.gif">';
ajax.onreadystatechange=function() {
if (ajax.readyState==4) {
//mostrar resultados en esta capa
divContenido.innerHTML = ajax.responseText
}
}
//como hacemos uso del metodo GET
//colocamos null ya que enviamos
//el valor por la url ?pag=nropagina
ajax.send(null)
}
paginator.php
Código PHP:
Ver original<?php
$connect_mysql = mysql_connect('localhost','username','password');
$RegistrosAMostrar=150; //Especifico cuantas filas quiero mostrar
//estos valores los recibo por GET
$RegistrosAEmpezar=($_GET['pag']-1)*$RegistrosAMostrar;
$PagAct=$_GET['pag'];
//caso contrario los iniciamos
}else{
$RegistrosAEmpezar=0;
$PagAct=1;
}
$sql = "SELECT * FROM tabla ORDER BY campo LIMIT $RegistrosAEmpezar, $RegistrosAMostrar";
echo '<table width="395px" border="1">';
echo "<tr>";
echo "<td class='table2' style='color:#900' width='20px'>".$row['id']."</td>";
echo "<td class='table1' style='color:#FC0' width='85px'>".$row['username']."</td>";
echo "<td class='table1' width='61px'>".$row['points']."</td>";
echo "<td class='table1' width='40px'>".$row['plus']."%</td>";
echo "<td class='table1' width='42px'>";
if(empty($row['from'])) { echo ""; } else { echo "<a href='".$row['from']."'>Visitar</a></td>"; }
echo "</tr>";
}
echo "</table>";
//******--------determinar las páginas---------******//
$PagAnt=$PagAct-1;
$PagSig=$PagAct+1;
$PagUlt=$NroRegistros/$RegistrosAMostrar;
//verificamos residuo para ver si llevará decimales
$Res=$NroRegistros%$RegistrosAMostrar;
// si hay residuo usamos funcion floor para que me
// devuelva la parte entera, SIN REDONDEAR, y le sumamos
// una unidad para obtener la ultima pagina
if($Res>0) $PagUlt=floor($PagUlt)+1;
//desplazamiento
echo "<div id='pages_position'>";
echo "<strong>".$PagAct."/".$PagUlt."</strong> ";
if($PagAct>1) echo "<a onclick=\"Pagina('$PagAnt')\">Anterior</a> ";
if($PagAct<$PagUlt) echo " <a onclick=\"Pagina('$PagSig')\">Siguiente</a> ";
echo "</div>";
?>
La base de datos que use tiene columnas llamadas (d,username,points,plus) para el ejemplo pr´ctico.
Con esto ya tendrías echo una paginacion a y claro para mostrarla debes hacer lo siguiente
index.php
Código PHP:
Ver original<html><head>
<script type="text/javascript" src="./includes/scripts/paginator.js"></script>
</head>
<body>
<?php include_once('paginator.php'); ?>
</body>
Es todo, saludos.