Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   PHP (https://www.clubdelphi.com/foros/forumdisplay.php?f=15)
-   -   Operador lógico (con Firebird de por medio) (https://www.clubdelphi.com/foros/showthread.php?t=60480)

papulo 03-10-2008 15:51:35

Operador lógico (con Firebird de por medio)
 
Tengo el siguiente código:
Código PHP:

        $sql_indirect "SELECT X
                             FROM Y"
;
        if(
$direct_search == 'NO'){
                
$sql_indirect $sql_indirect." WHERE algo=$variable1"
                }
        
$sql_indirect $sql_indirect." ORDER BY X";
                    
        
$sql_direct "SELECT X
                           FROM Y,J"
;
        if(
$direct_search == 'NO'){
                
$sql_direct $sql_direct." WHERE algo=$variable2"
                }
        
$sql_direct $sql_direct." ORDER BY X";
                    
        if ((((
$variable1 == '666') && ($variable == '3')) || (($variable1 <> '666') && ($variable2 == '6'))) && $direct_search=='NO') {
            
$sql $sql_indirect;
        }else{
            
$sql $sql_direct;
        }
        
$sql consulta_db($sql);
        
        if ((
$direct_search == 'YES') && !($resultado ibase_fetch_object($sql))) {
              
$sql consulta_db($sql_indirect);  
        }
         
$resultado ibase_fetch_object($sql);

        
$ref_app "<select id=\"applications\" name=\"applications\">";        
        if (
$resultado)    {
            do {    
                
$ref_app $ref_app."<option>".htmlentities($resultado->X)."</option>";
            } while(
$resultado ibase_fetch_object($sql));
        }
        
$ref_app $ref_app."</select>";
        return 
$ref_app

El problema radica con la condición:

Código PHP:

         if (($direct_search == 'YES') && !($resultado ibase_fetch_object($sql))) {
              
$sql consulta_db($sql_indirect);  
        }
         
$resultado ibase_fetch_object($sql); 

Que nunca llega a cumplirse.

¿Está bien construida la condición en la cual si la primera consulta no me devuelve nada la repita pero asignando una nueva query a $sql?

Me lío un poco aún con la negación.

Saludos.


La franja horaria es GMT +2. Ahora son las 06:38:24.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi