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

Hola nuevamente!

Espero que puedan ayudarme ya que casi casi estoy terminando mi proyecto (de hecho, lo termine, pero lo que vengo a preguntar es para proyectos futuros).

Hace poco postie una pregunta sobre como hacer para que con PHP se filtren de un formulario solo aquellos campos que no esten en blanco, y el resto no se filtren. Gracias a la ayuda de los "forenses", pude realizar una función if que me permite hacer esto.

El problema, entonces, es el siguiente: mi codigo analiza por separado las distintas combinaciones que puede haber con respecto a si los campos estan vacios o no. Esto es decir: primero analiza si ambos campos tienen datos, si es verdadero se ejecuta una consulta, sino, analiza si un campo A esta vacio y el B no.. si pasa eso, ejecuta OTRA consulta.. y asi, hasta hacer las 4 combinaciones posibles con 2 campos de formulario (A y B vacios o llenos al mismo tiempo, A vacio y B lleno, y A vacio y B lleno).

El codigo es el siguiente:

Código PHP:
$id$_POST['idusuario'];
$monto$_POST['monto'];

mysql_select_db($database_conntrio$conntrio);
$query "SELECT * FROM pagos01 ";
if (
$id<and $monto=="" ){$query;} 
elseif (
$id>and $monto==""){$query .= " WHERE USER_ID= '$idusuario'";} 
elseif (
$id<and $monto<>""){$query .= " WHERE MONTO= '$monto'";} 
else {
$query .= " WHERE USER_ID= '$idusuario' AND MONTO= '$monto' ";}; 
Ahora, creo que es evidente mi problema de que, si tuviese 20 campos a filtrar, hacer esto esto sería una tarea de Hercules. Por lo cual quería saber si alguien tiene una solucion para este pequeño problema, o alguna simplificacion para esta condicion if, alguna forma de automatizarla...

Desde ya muchas gracias a todos por su colaboracion!!

Pablo.

pd: por las dudas... para los adminsitradores, puse un nuevo tema porque pense que este ya no tenia nada que ver con el que postie ayer (que era respecto a la consulta en si), sino que era de la propia estructura del if... pero si creen que deben moverlo junto a mi otro tema, pues por algo son los administradores! un saludo!