la consulta genera TODA de manera dinamica, te paso la parte en la que se agregan los like, si necesitas mas me avisas
Código PHP:
Ver originalforeach($campos as $tablas => $fields){
foreach($fields as $key => $campo){
/*
* Concatena cada uno de los campos seleccionados,
* con la notacion de TABLA.CAMPO
*/
$query['fields'].="
$tablas.$campo,";
/*
* Mientras se extraen los campos a mostrar en la consulta
* se forman las condiciones dentro de la clausula WHERE
*/
$query['where'].="
$tablas.$campo like(\"%$buscar%\") or";
$wr=true; //wr es simplemente un indicador si se formo el where si no tienen ninguna condicion agrego un where 1=1
}
}
espero se entienda.
les explico un poco. a esta funcion llegan dos parametros, el primero es un arreglo con los campos precisamente la variable $campos, esta tiene la siguiente estructura.
Código PHP:
Ver original(
[organizaciones
] => Array (
[organizacion] => organizacion
)
(
[sector] => sector
)
(
[giro] => giro
)
(
[tamano] => tamano
)
)
con esto en esos dos foreach lo que hago es crear la lista de campos que se solicutan y al mismo tiempo colocar las condiciones del where, al finalme queda la consulta con la que extraigo los registros.
el problema viene cuando le agrego el
order by para esto lo hago con una vriable de sesion, ya que el orden debe ser "anidado", es decir,
ordenar por campo1, campo2. es en este momento que me marca el error de sintaxis que menciono.