Ver Mensaje Individual
  #3 (permalink)  
Antiguo 13/06/2012, 16:50
powerbalance48
 
Fecha de Ingreso: junio-2012
Mensajes: 6
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Problema codigo de paginacion php y mysql

Cita:
Iniciado por lubtufano Ver Mensaje
Pues el problema esta en el valor que se asigna a la variable "screen", es decir, la variable que se pasa por los enlaces Anterior y Siguiente. El asunto es asi en la primera página la variable $position toma el valor por defecto 0, despues en el enlace Siguiente se asigna el valor a la variable screen de esta manera.

$url = "index.php?screen=" . ($position+1);
echo "<a href=\"$url\">Siguiente</a>\n";

Con lo que screen tendrá el valor 1 el cual sera asignado a $position en la siguiente página y luego será utilizado en la consulta.

$sql = "SELECT * FROM noticias2 order by id ASC LIMIT ".$position.",".$rows_for_page;

Esto equivale a:

$sql = "SELECT * FROM noticias2 order by id ASC LIMIT 1,".$rows_for_page;

Y ahora en el enlace se sumará 1 al valor de $position con lo que la variable screen se enviara a la siguiente página con un valor de 2, por lo tanto en la siguiente consulta trendremos.

$sql = "SELECT * FROM noticias2 order by id ASC LIMIT 2,".$rows_for_page;

Y en la siguiente.

$sql = "SELECT * FROM noticias2 order by id ASC LIMIT 3,".$rows_for_page;

Y asi sucesivamente el valor en la clausula LIMIT irá avanzando de 1 en 1 cuando lo que se desea es que vaya de 2 en 2; para esto hay que sumar y restar 2.

$url = "index.php?screen=" . ($position+2);
echo "<a href=\"$url\">Siguiente</a>\n";

$url = "index.php?screen=" .($position-2);
echo "<a href=\"$url\">Anterior</a>\n";
En parte se soluciono el problema, ahora marca de 2 en 2, pero el problema ahora es que salta de pagina en pagina es decir de la pagina 1 pasa a la pagina 3 de la 3 a la 5 y asi sucesivamente, podrias ayudarme en eso?

Gracias por tu ayuda! ;)