Foros del Web » Programando para Internet » PHP »

Consulta sobre subrayado de los link en paginacion

Estas en el tema de Consulta sobre subrayado de los link en paginacion en el foro de PHP en Foros del Web. Hola, La paginacion funciona bien, me despliega los registros correctamente, el problema que tengo es que al final de la última pagina la palabra Sig ...
  #1 (permalink)  
Antiguo 03/01/2004, 14:40
 
Fecha de Ingreso: agosto-2003
Mensajes: 33
Antigüedad: 20 años, 6 meses
Puntos: 0
Pregunta Consulta sobre subrayado de los link en paginacion

Hola,

La paginacion funciona bien, me despliega los registros correctamente, el problema que tengo es que al final de la última pagina la palabra Sig tiene link cuando ya no hay más registros que mostrar y yo quiero que la palabra Sig este sin link en vez de mostrar la pagina sola sin registros y demas quiero que los numeros y las palabras Ant y Sig aparezcan subrayadas cuando tengan link.

Espero que me entiendan la consulta.

Código PHP:
<?
$base
="trabajo";
$conn=mysql_connect("localhost","","");
mysql_select_db($base,$conn);

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

$buscador='';
$seccion='';
$condicion='';
//$tabla='resum';
//$tabla_query=$tabla;

$buscador=$HTTP_GET_VARS['buscar'];
$seccion=$HTTP_GET_VARS['sec'];
$tipos=$HTTP_GET_VARS['tipo'];
if (
$buscador){
if (
$seccion=="autor" and ($tipos="1" or $tipos="2")){
$condicion.=" where autor like '%$buscador%' order by titulo";
}
else if (
$seccion=="titulo" and ($tipos="1" or $tipos="2")){
$condicion.=" where titulo like '%$buscador%' order by titulo";
}
else if (
$seccion=="materia" and ($tipos="1" or $tipos="2")){
$condicion.=" where materia like '%$buscador%' order by titulo";
}
else if (
$seccion=="temas" and ($tipos="1" or $tipos="2")){
$condicion.=" where temas like '%$buscador%' order by titulo";
}
}

$sql="select * from resum".$condicion." limit $inicial,$cantidad";
$cad=mysql_db_query($base,$sql) or die (mysql_error());

$contar="select * from resum".$condicion;
$contarok=mysql_db_query($base,$contar);
$total_records=mysql_num_rows($contarok);
$pages=ceil($total_records $cantidad);

echo 
"<h4><b><i>RESULTADOS:</h4></b></i>";
echo 
"<br>";
echo 
"<table width='625' height='40' cellpadding='1' cellspacing='1' align='center' border='2'>";
echo 
"<tr>";
echo 
"<td height='20' align='center' bgcolor='#E8E8E8'><b>REFERENCIA</b></td>";
echo 
"<td height='20' align='center' bgcolor='#E8E8E8'><b>TITULO</b></td>";
echo 
"<td height='20' align='center' bgcolor='#E8E8E8'><b>AUTOR</b></td>";
echo 
"<td height='20' align='center' bgcolor='#E8E8E8'><b>A&Ntilde;O</b></td>";
echo 
"</tr>";

//Resultados
if (mysql_num_rows($cad) !=0){
while(
$row=mysql_fetch_array($cad)){
?>
<tr bgcolor="#F0FAFF"onmouseover="this.bgColor='#FFECEC'"onmouseout="this.bgColor='#F0FAFF'">
<?
echo '<td>'.$row["referencia"].'</td>';
echo 
'<td><a href="e_desplegar.php3?titulo='.urlencode($row["titulo"]).'" target="ventana" onclick="javascript:abreventana(this.href,this.target); return false;">'.$row["titulo"].'</a></td>';
echo 
'<td>'.$row["autor"].'</td>';
echo 
'<td>'.$row["anno"].'</td>';
echo 
'</tr>';
}
}else{
echo 
"<b>!No hay registros coincidentes</b>";
}
mysql_free_result($cad);

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

// Creando los enlaces de paginación
echo "<p>";
if (
$pages>1){
if (
$pg <> 0)
{
$url $pg 1;
echo 
"<a href='".$HTTP_SERVER_VARS[PHP_SELF]."?pg=".$url."&buscar=".urlencode($buscador)."&sec=".$seccion."'>&laquo; Ant</a>&nbsp;";
}
else {
echo 
" ";
}

for (
$i 0$i<$pages$i++) {
if (
$i == $pg) {
echo 
"<font face=Arial size=2 color=#800000><b>&nbsp;$i&nbsp;</b></font>";
}
else {
echo 
"<a href='".$HTTP_SERVER_VARS[PHP_SELF]."?pg=".$i."&buscar=".urlencode($buscador)."&sec=".$seccion."'>".$i."</a>&nbsp;";
}
}

if (
$pg $pages) {
$url $pg 1;
echo 
"<a href='".$HTTP_SERVER_VARS[PHP_SELF]."?pg=".$url."&buscar=".urlencode($buscador)."&sec=".$seccion."'>Sig &raquo;</a>";
}
else {
echo 
" ";
}
echo 
"</p>";
}
?>
Gracias por la ayuda.
__________________
Patricia
  #2 (permalink)  
Antiguo 03/01/2004, 19:32
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 6 meses
Puntos: 41
El script que pones fue posteado por dooky hace tiempo... se detectaron algunos errores y yo posteé algunas correciones y mejoras... Lo que pasa es que las páginas se empiezan a contar desde cero, por lo tanto, $pg siempre será menor que $pages y siempre entrará al último if que tienes.
La solución es restarle uno a $pages para comparar.

Quedaría así:
Código PHP:
if ($pg $pages 1) {
$url $pg 1;
echo 
"<a href='".$HTTP_SERVER_VARS[PHP_SELF]."?pg=".$url."&buscar=".urlencode($buscador)."&sec=".$seccion."'>Sig &raquo;</a>";
}
else {.... 
Revisa este post para comparar:

http://www.forosdelweb.com/showthrea...ion+or+paginar

Saludos
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 17:20.