Ver Mensaje Individual
  #2 (permalink)  
Antiguo 30/10/2012, 17:55
Avatar de Triby
Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: armar consulta dinámica con múltiples parametros

Lo más fácil sería crear un arreglo con los filtros que aplicarás, ejemplo:

Código PHP:
Ver original
  1. $filtros = array();
  2. if(isset($_GET['id']) && $_GET['id'] != 0) {
  3.     $filtros[] = "id={$_GET['id']}";
  4. }
  5. if(isset($_GET['combo1']) && $_GET['combo1'] != 's') {
  6.     $filtros[] = "campo1='{$_GET['combo1']}'";
  7. }
  8. if(isset($_GET['comboN']) && $_GET['comboN'] != 's') {
  9.     $filtros[] = "campoN='{$_GET['comboN']}'";
  10. }
  11.  
  12. // Armas la consulta
  13. $sql = 'SELECT * FROM tabla';
  14.  
  15. // Si hay filtros a aplicar, los agregas:
  16. if(count($filtros) > 0) {
  17.     $sql .= ' WHERE ' . implode(' and ', $filtros);
  18. }

Sólo recuerda verificar y, en su caso, escapar cada dato recibido para evitar errores y/o posibles ataques.
__________________
- León, Guanajuato
- GV-Foto