![Antiguo](http://static.forosdelweb.com/fdwtheme/images/statusicon/post_old.gif)
12/12/2004, 06:08
|
| | Fecha de Ingreso: junio-2004
Mensajes: 101
Antigüedad: 20 años, 8 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 |