Ver Mensaje Individual
  #2 (permalink)  
Antiguo 12/12/2004, 06:08
aimar_20
 
Fecha de Ingreso: junio-2004
Mensajes: 101
Antigüedad: 19 años, 10 meses
Puntos: 0
tengo otro problema con el paginador a parte del anterior

tengo una lista desplegable con varios tipos de articulos, y dependiendo del tipo de articulo que elijas te mostrara unos resultados u otros. Para ello, he probado con un switch:

$_pagi_sql="Select * From reference ";
//echo $tipo;
//controlar que selecciono, si no selecciono nada, si esta unknown
//if($tipo=="unknown") {
switch($tipo) {
case "unknown": {
echo " he seleccionado unknown";
$_pagi_sql.="where 1 ";
if (!empty($title))
{
//echo "He entrado al primer if";
$_pagi_sql.= "AND Title like '%".$title."%'";

}

if (!empty($author))
{
//echo"He entrado al 2º if";
$_pagi_sql.= "AND Author like '%".$author."%'";

}

if (!empty($year))
{
//echo"He entrado al 3 if";
$_pagi_sql.= "AND Year like '%".$year."%'";

}

if (!empty($month))
{
//echo"He entrado al 4 if";
switch($month) {
case "january": $_pagi_sql.= "AND Month like '%january%'";break;
case "february": $_pagi_sql.= "AND Month like '%february%'";break;
case "march": $_pagi_sql.= "AND Month like '%marh%'";break;
case "april": $_pagi_sql.= "AND Month like '%april'";break;
case "maig": $_pagi_sql.= "AND Month like '%maig%'";break;
case "june": $_pagi_sql.= "AND Month like '%june%'";break;
case "july": $_pagi_sql.= "AND Month like '%july%'";break;
case "august": $_pagi_sql.= "AND Month like '%august%'";break;
case "september": $_pagi_sql.= "AND Month like '%september%'";break;
case "october": $_pagi_sql.= "AND Month like '%october%'";break;
case "november": $_pagi_sql.= "AND Month like '%november%'";break;
case "december": $_pagi_sql.= "AND Month like '%december%'";break;



}



}

//falta poner lo de journal y conference, y lo de anywhere

break;
}
//seguir con los demas tipos de articulos
case "book": {
$_pagi_sql.="where 1 AND Type like 'book' ";
echo " he seleccionado un libro";
if (!empty($title))
{
//echo"He entrado al primer if";
$_pagi_sql.= "AND Title like '%".$title."%'";

}

if (!empty($author))
{
//echo"He entrado al 2º if";
$_pagi_sql.= "AND Author like '%".$author."%'";

}

if (!empty($year))
{
//echo"He entrado al 3 if";
$_pagi_sql.= "AND Year like '%".$year."%'";

}

if ($month!="no")
{
//echo"He entrado al 4 if";
switch($month) {
case "january": $_pagi_sql.= "AND Month like '%january%'";break;
case "february": $_pagi_sql.= "AND Month like '%february%'";break;
case "march": $_pagi_sql.= "AND Month like '%marh%'";break;
case "april": $_pagi_sql.= "AND Month like '%april'";break;
case "maig": $_pagi_sql.= "AND Month like '%maig%'";break;
case "june": $_pagi_sql.= "AND Month like '%june%'";break;
case "july": $_pagi_sql.= "AND Month like '%july%'";break;
case "august": $_pagi_sql.= "AND Month like '%august%'";break;
case "september": $_pagi_sql.= "AND Month like '%september%'";break;
case "october": $_pagi_sql.= "AND Month like '%october%'";break;
case "november": $_pagi_sql.= "AND Month like '%november%'";break;
case "december": $_pagi_sql.= "AND Month like '%december%'";break;



}



}



break;
}

}//fin switch


Aqui lo que hago, es que si no se sabe el tipo de articulo (unknown), que es la opcion por defecto, muestro de una tabla general.
y si seleccionas book, restrinjo la busqueda a los que su tipo es book.
Cuando le doy a buscar, al principio los resultados que muestra son validos, pero cuando me desplazo con la barra de desplazamiento no muestra los resultados correctos.

He probado con un if, y hace lo mismo
Antes lo tenia que mostrara todos los resultados sin distinguir tipos de articulos y el paginador funcionaba, pero al querer restringir busquedas ya no funciona correctamente.

Como lo puedo solucionar. Falta propagar algun tipo de variable al paginador?

Gracias