11/12/2007, 15:39
|
| | | Fecha de Ingreso: noviembre-2007 Ubicación: Knocking the Death Door..
Mensajes: 368
Antigüedad: 17 años Puntos: 3 | |
Rollo de Paginacion con PHP Buenas amigos estoy haciendo una paginacion con PHP usando variables de sesion pero tengo un problema solo la primera pagina me muestra los resultados tal y como deben de ser y no se por que adjunto un fragmento del codigo.. cualquier ayuda sera mas que bien recibida..
if (isset($_GET['search_criteria']))
{
$number=$_GET['search_criteria'];
$sql="SELECT knumber,description1,clasification FROM tabla.tabla where knumber like '%".$number."%'";
}
//SELECT * FROM tabla.tabla where knumber like '%2' ORDER BY knumber ASC LIMIT 0,5
?>
<?php
//$sql="SELECT * FROM tabla.tabla";
$res=mysql_query($sql);
$numeroRegistros=mysql_num_rows($res);
if($numeroRegistros<=0)
{
echo "<div align='center'>";
echo "<font face='verdana' size='-2'>No se encontraron resultados</font>";
echo "</div>";
}else{
//////////elementos para el orden
if(!isset($orden))
{
$orden="knumber";
}
//////////fin elementos de orden
//////////calculo de elementos necesarios para paginacion
//tamaño de la pagina
$tamPag=8;
//pagina actual si no esta definida y limites
if(!isset($pagina))
{
$pagina=1;
$inicio=1;
$final=$tamPag;
}
//calculo del limite inferior
$limitInf=($pagina-1)*$tamPag;
//calculo del numero de paginas
$numPags=ceil($numeroRegistros/$tamPag);
if(!isset($pagina))
{
$pagina=1;
$inicio=1;
$final=$tamPag;
}else{
$seccionActual=intval(($pagina-1)/$tamPag);
$inicio=($seccionActual*$tamPag)+1;
if($pagina<$numPags)
{
$final=$inicio+$tamPag-1;
}else{
$final=$numPags;
}
}
//////////fin de dicho calculo
//////////creacion de la consulta con limites
// "SELECT knumber,description1,clasification FROM tabla.tabla ORDER BY ";
$sql=$sql."ORDER BY ".$orden." ASC LIMIT ".$limitInf.",".$tamPag;
$res=mysql_query($sql);
//////////fin consulta con limites
echo "<div align='center'>";
echo "<font face='verdana' size='-2'>encontrados ".$numeroRegistros." resultados<br>";
echo "ordenados por <b>".$orden."</b></font>";
echo "</div>";
echo "<table align='center' >";
echo "<tr><td></td></tr>";
echo "<th bgcolor='#FF0000'><a class='ord' href='".$_SERVER["PHP_SELF"]."?pagina=".$pagina."&orden=knumber'>Knumber</a></th>";
echo "<th bgcolor='#FF0000'><a class='ord' href='".$_SERVER["PHP_SELF"]."?pagina=".$pagina."&orden=description1'>Descript ion</a></th>";
echo "<th bgcolor='#FF0000'><a class='ord' href='".$_SERVER["PHP_SELF"]."?pagina=".$pagina."&orden=clasification'>Clasifi cation</a></th>";
while($registro=mysql_fetch_array($res))
{
?>
<!---<hr noshade>--->
<!-- tabla de resultados -->
<tr onMouseOver="this.style.backgroundColor='#FF9900'; this.style.cursor='hand';" onMouseOut="this.style.backgroundColor=''"o"];" onClick="javascript:muestra('<? echo $registro["number"]." ".$registro["description1"]." ".$registro["clasification"]; ?>');">
<td><font size="2" face="Verdana, Arial, Helvetica, sans-serif" color=""><b><? echo $registro["number"]; ?></b></font></td>
<td><font size="2" face="Verdana, Arial, Helvetica, sans-serif" color=""><b><? echo $registro["description1"]; ?></b></font></td>
<td><font size="2" face="Verdana, Arial, Helvetica, sans-serif" color=""><b><? echo $registro["clasification"]; ?></b></font></td>
</tr>
<!-- fin tabla resultados -->
<?
}//fin while
echo "</table>";
}//fin if
//////////a partir de aqui viene la paginacion
?>
<br>
<table border="0" cellspacing="0" cellpadding="0" align="center">
<tr><td align="center" valign="top">
<?
if($pagina!=1)
{
echo "<a class='p' href='".$_SERVER["PHP_SELF"]."?pagina=".(1)."&orden=".$orden."'>";
echo "<font face='verdana' size='-2'>inicio</font>";
echo "</a> ";
}
if($pagina>1)
{
echo "<a class='p' href='".$_SERVER["PHP_SELF"]."?pagina=".($pagina-1)."&orden=".$orden."'>";
echo "<font face='verdana' size='-2'>anterior</font>";
echo "</a> ";
}
for($i=$inicio;$i<=$final;$i++)
{
if($i==$pagina)
{
echo "<font face='verdana' size='-2'><b>".$i."</b> </font>";
}else{
echo "<a class='p' href='".$_SERVER["PHP_SELF"]."?pagina=".$i."&orden=".$orden."'>";
echo "<font face='verdana' size='-2'>".$i."</font></a> ";
}
}
if($pagina<$numPags)
{
echo " <a class='p' href='".$_SERVER["PHP_SELF"]."?pagina=".($pagina+1)."&orden=".$orden."'>";
echo "<font face='verdana' size='-2'>siguiente</font></a>";
}
if($pagina!=$numPags)
{
echo " <a class='p' href='".$_SERVER["PHP_SELF"]."?pagina=".($numPags)."&orden=".$orden."'>";
echo "<font face='verdana' size='-2'>final</font>";
echo "</a>";
}
//////////fin de la paginacion
?>
</td></tr>
</table>
<hr noshade style="color:CC6666;height:1px">
<div align="center"><font face="verdana" size="-2"><a class="p" href="index.php">::RELOAD::</a></font></div>
</body>
</html>
<?
mysql_close();
?> |