Ver Mensaje Individual
  #31 (permalink)  
Antiguo 27/09/2008, 11:35
locoxchacho
 
Fecha de Ingreso: septiembre-2008
Ubicación: Nuñez, Capital Federal
Mensajes: 423
Antigüedad: 16 años, 6 meses
Puntos: 1
Respuesta: Simplificar condicion IF

David, finalmente he encontrado la solucion para el problema.. utilice varias funciones, como el explode, el count y el MATCH AGAINST y el LIKE...

aca dejo el codigo para que veas como lo hice, y me digas tu opinion. Hasta ahora, lo he probado con algunos campos (20) y funciona a la perfeccion....

Muchas gracias por toda tu ayuda! Ahora si he terminado el proyecto!!!

Pablo



Código PHP:
$obs$_POST['obs']; // lo que manda el formulario 

$obsf explode (" "$obs); // separo los terminos de busqueda cuando haya un espacio entre ellos 

if (!empty($obs)) { // si el cuadro de busqueda del formulario NO esta vacio, se ejecuta lo consulta.... 
   
if (empty($query)) { 
        if(
count($obsf)==1){ // cuento los caracteres que ingrese con el explode.. si es igual a 1, utilizo like.. sino, utilizo el match against 
        
$query="SELECT * FROM pagos01 WHERE OBSERVACIONES LIKE '%".$obs."%' ";} 
        else { 
        
$query="SELECT * FROM pagos01 WHERE MATCH(OBSERVACIONES) AGAINST ('%".$obs."%') "
   }} else { 
           if(
count($obsf)==1){ 
            
$query="SELECT * FROM pagos01 WHERE OBSERVACIONES LIKE '%".$obs."%' ";} 
        else { 
            
$query="SELECT * FROM pagos01 WHERE MATCH(OBSERVACIONES) AGAINST ('%".$obs."%') "
   } 
   }