
19/11/2009, 09:52
|
 | | | Fecha de Ingreso: septiembre-2009
Mensajes: 26
Antigüedad: 15 años, 5 meses Puntos: 0 | |
Respuesta: Problemas con filtrado Gracias Gerson, ya resolví lo del filtrado y lo hice así:
//Cargo variables diferenciando mayusculas y minusculas
$a = strtolower($filter);
$b = ucwords($a);
$c = strtoupper($filter);
Al armar la consulta me queda asi:
$filterstr = sqlstr($filter);
if (!$wholeonly && isset($wholeonly) && $filterstr!='') $filterstr = "%" .($filterstr) ."%";
$sqle = "SELECT * FROM (SELECT id, emp, org FROM public.n_emp) subq";
if (isset($filterstr) && $filterstr!='' && isset($filterfield) && $filterfield!='') {
//Aqui pregunto por todos los parametros posibles de filtrado
$sqle .= " where ( ".sqlstr($filterfield) ." like '%" .$filterstr ."%' ) or ( ".sqlstr($filterfield)." like '%".$b."%' ) or ( ".sqlstr($filterfield)." like '%".$a."%' ) or ( ".sqlstr($filterfield)." like '%".$c."%' )";
} elseif (isset($filterstr) && $filterstr!='') {
//Paso por todos los campos y parametros a filtrar
$sqle .= " where (id like '" .$filterstr ."') or (id like '" .$a ."') or (id like '" .$b ."') or (id like '" .$c ."') or (emp like '" .$filterstr ."') or (emp like '" .$a ."') or (emp like '" .$b ."') or (emp like '" .$c ."') or (org like '" .$filterstr ."') or (org like '" .$a ."') or (org like '" .$b ."') or (nci like '" .$c ."')";
}
if (isset($order) && $order!='') $sqle .= " order by \"" .sqlstr($order) ."\"";
if (isset($ordtype) && $ordtype!='') $sqle .= " " .sqlstr($ordtype);
$res = pg_query($conn, $sqle) or die(pg_last_error());
Gracias por tu colaboracion.....Saludos |