Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/09/2009, 14:13
Avatar de JessicaTJ
JessicaTJ
 
Fecha de Ingreso: enero-2007
Ubicación: 127.0.0.1
Mensajes: 472
Antigüedad: 17 años, 3 meses
Puntos: 25
Paginator (jpinedo) Error al moverse en paginacion

Hola de nuevo chicos.

Yo de enfadosa de nuevo

Veran, despues de romperme la cabeza mucho tiempo de nuevo recurro a ustedes, veran, el paginador al parecer esta haciendo unas cositas medio raras.

Tengo un motor de busqueda que realiza una consulta a la base de datos, e imprime los datos paginandolos con el paginador de jpinedo.

El problema es que cuando doy en LAST o NEXT, me hace un query completo a la base de datos, no se porke lo esta haciendo, el query para la BDD es este:

Código PHP:
$_pagi_sql "SELECT FROM tabla1 WHERE part LIKE '%{$_POST['Search']}%'"
Por ejemplo, tengo 8 item que comienzan con 10, tengo que me despliegue 4 resultados por pagina, y el paginador me muestra esto:

« < 1 | 2 > »

Hasta ahi todo bien, pero cuando doy en » me despliega todos los resultados de la base de datos, que son 15 ahorita, eso queda asi:

« < 1 | 2 | 3 | 4 > »

Mi pregunta es, alguna idea de porke me esta haciendo eso?

De verdad que les agradecere mil su ayuda

Si es de ayuda, aqui dejo el script completo de paginacion que estoy usando:

Código PHP:
<?php require_once("includes/functions.php"); ?>
<?php

//Conexión a la base de datos
require_once("enlace.php");

//Sentencia sql (sin limit)
timequery();
$_pagi_sql "SELECT FROM db1 WHERE part LIKE '%{$_POST['Search']}%' OR vendor LIKE '%{$_POST['Search']}%' ORDER BY id";

//cantidad de resultados por página (opcional, por defecto 20)
$_pagi_cuantos 4;//Elegí un número pequeño para que se generen varias páginas

//cantidad de enlaces que se mostrarán como máximo en la barra de navegación
$_pagi_nav_num_enlaces 5;//Elegí un número pequeño para que se note el resultado

//Decidimos si queremos que se muesten los errores de mysql
$_pagi_mostrar_errores false;//recomendado true sólo en tiempo de desarrollo.

//Si tenemos una consulta compleja que hace que el Paginator no funcione correctamente, 
//realizamos el conteo alternativo.
$_pagi_conteo_alternativo true;//recomendado false.

//Variables a propagar
$_pagi_propagar = array("part""vendor");//No importa si son POST o GET

//Definimos qué estilo CSS se utilizará para los enlaces de paginación.
//El estilo debe estar definido previamente
$_pagi_nav_estilo "N/D";

//definimos qué irá en el enlace a la página anterior
$_pagi_nav_anterior "<img src='images/sort_prev_arrow.gif' />";// podría ir un tag <img> o lo que sea

//definimos qué irá en el enlace a la página siguiente
$_pagi_nav_siguiente "<img src='images/sort_next_arrow.gif' />";// podría ir un tag <img> o lo que sea

//Incluimos el script de paginación. Éste ya ejecuta la consulta automáticamente
include("paginator.inc.php");

//Imprimimos el texto de query que ejecuto el cliente e iniciamos DIV para efecto de imagenes detalladas
    
if (mysql_num_rows($_pagi_result) > 0){  // el secreto .. xDD ... 
    
echo "<h1>Search results for item(s) with requested query</h1>";
    echo 
"<div id='gallery'>";

//Leemos y escribimos los registros de la página actual
$total 2;
$contador 0;
echo 
"<table><tr>";
while(
$row mysql_fetch_array($_pagi_result)){
    echo 
"<td>
    <form method='post' action='email.php' onSubmit='return Validar(this);'>
    <table width='400' border='0' class='prodinfo'><tr><td width='50%'>
    Campo1<br />
    Campo2<br />
    Campo3<br />
    Campo4<br />
    Campo5
    </td><td width='50%'>
    Campo6<br />
    Campo7<br />
    Campo8<br />
    <input type='submit' name='submit' value='Request Item' /><br />
    </td></tr></table>
    </form>

    <form method='post' action='item.php'>
    <table width='400' border='0' class='prodinfo'><tr><td>
    Field1
    Field2
    Field3
    Field4
    <input type='submit' name='submit' value='Detailed View for item' /><br />
    </td></tr></table>
    </form><br></td>"
;
$contador++;
       if (
$contador == $total)
       {
              echo 
'</tr><tr>';
              
$contador 0;
}
}
echo 
"</tr></table>";

//Incluimos la barra de navegación y terminamos DIV para efecto de imagenes detalladas
echo "</div>";
echo 
"<hr />";
echo 
"<div align='center'>".$_pagi_navegacion."</div><br>";

//Incluimos la información de la página actual
echo "<div align='center'>Showing results ".$_pagi_info."</div>";
timequery();
} else {
   echo 
"<br><h1>No results where found for your Search, please try another term.</h1>If you still can't find what you're looking for, feel free to Contact Us.";
}  
?>