Ver Mensaje Individual
  #15 (permalink)  
Antiguo 29/07/2013, 14:16
Avatar de yamsoft
yamsoft
 
Fecha de Ingreso: julio-2013
Ubicación: Maracaibo
Mensajes: 27
Antigüedad: 11 años, 7 meses
Puntos: 2
Respuesta: Consulta parametrizada.

No hay problema amigo, para eso estamos.

Muy bien, el php como te estaba diciendo no es el problema, lo que veo "medio" complicado es el javascript; Porque por lo que veo debes hacer varias condiciones...

Si lo que necesitas saber es donde colocar y cuando disparar la función que ejecutará el ajax, puedes hacer una o varias funciones (como tu decidas) por aparte...

Por ejemplo:
Código Javascript:
Ver original
  1. function defcriterio()
  2.         {
  3.             var selected = $("#criterio option:selected");    
  4.             var msg = "";
  5.             if(selected.val() != 0)
  6.             {
  7.                 var variable = selected.val();
  8.                 switch (variable)
  9.                 {
  10.                     case "1":
  11.                         $jMaQma("#country").attr("disabled",true);
  12.                         $jMaQma("#state").attr("disabled",true);
  13.                         $jMaQma("#city").attr("disabled",true);
  14.                         $jMaQma("#rubro").attr("disabled",true);
  15.                         $jMaQma("#searchfor").attr("disabled",false);
  16.                          // Busqueda por cliente:
  17.                          var cliente   =   $jMaQma("#searchfor").val();
  18.                          busqueda_por_cliente(cliente);
  19.                         break;
  20.                     case "2":
  21.                         $jMaQma("#country").attr("disabled",false);
  22.                         $jMaQma("#state").attr("disabled",true);
  23.                         $jMaQma("#city").attr("disabled",true);
  24.                         $jMaQma("#rubro").attr("disabled",true);
  25.                         $jMaQma("#searchfor").attr("disabled",true);
  26.                         break;
  27.                  }
  28.            }
  29.      }
  30.  
  31. function busqueda_por_cliente(cliente)
  32. {
  33.         var parametros = {
  34.         "bus_por" : 1,
  35.         "searchfor" : cliente
  36.        };
  37.  
  38.  
  39.   $.ajax({
  40.        data:  parametros,  
  41.        url:   'archivo_receptor.php',
  42.        type:  'post',  
  43.        beforeSend: function () {
  44.            $("#capaAjax").html("<div align='center'>Cargando...</div>");
  45.        },
  46.        success:  function (response) {
  47.              $("#capaAjax").html(response);
  48.         }
  49.    });
  50. }

Ahora el php:

Código PHP:
Ver original
  1. if(isset($_POST['bus_por']))
  2. {
  3.       extract($POST); # con esto hacemos $_POST['var'] sea igual a: $var
  4.      $bus_por         = filter_var($bus_por, FILTER_SANITIZE_NUMBER_INT);
  5.       $searchfor       = filter_var($searchfor, FILTER_SANITIZE_STRING);
  6.      
  7.  
  8.       switch($bus_por)
  9.     {
  10.     case 1:
  11.         {
  12.         $where = "WHERE clientname LIKE '%" . $database->getEscaped($searchfor) . "%'";
  13.         break;
  14.         }
  15.     case 2:
  16.         {
  17.         echo "Hacer el query por ubicación";
  18.         break;
  19.         }
  20.     case 3:
  21.         {
  22.         $where = "WHERE rubro LIKE '%" . $database->getEscaped($searchfor) . "%'";
  23.         break;
  24.         }
  25.     }
  26.     $database->setQuery("SELECT id, date_created, clientname as `name`, address, zipcode, city, state, country, phone, fax, mobile, email, contactname, website, description, travel_time, rate as hour_rate, manager as send_to_manager, block FROM #__support_client $where ORDER BY clientname ASC LIMIT " . $limitstart . ", " . $limit);
  27.     $clients = $database->loadObjectList();
  28.          
  29.  
  30. }


Algo parecido a esto :)