Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    1,085

    condizione che non funziona (IF) ..

    Ciao ..
    qualcuno mi sa dire cosa c'è che non va su questa condizione ..
    confrontando un campo con la somma di altri 2, pur essendo uguali entra nella condizione di 'diverso':

    Codice PHP:
    echo "imponibile_ins  -------->>" $imponibile_ins "<
    "
    ;                                  
    echo 
    "imponibile_rca_ins  ---->>" $imponibile_rca_ins "<
    "
    ;                              
    echo 
    "imponibile_ard_ins  ---->>" $imponibile_ard_ins "<
    "
    ;                              
                                                                                                                    
    if (
    $imponibile_ins  != ($imponibile_rca_ins $imponibile_ard_ins))                            
       {                                                                                            
        
    $somma =$imponibile_rca_ins $imponibile_ard_ins;                                          
                                                                                                    
        echo 
    "somma  -------->>" $somma "<
    "
    ;                                                
                                                                                                    
        
    $esito 'KO' ;                                                                             
        
    $err "campo 'Imponibile' non congruente con imponibile RCA/ARD !!";                       
        
    $pos_cursore 'fa5' ;                                                                      
        goto 
    end;                                                                                       
       } 
    ECHO:

    codice:
    imponibile_ins -------->>311.53<                                                         
    imponibile_rca_ins ---->>259.67<                                                         
    imponibile_ard_ins ---->>51.86<                                                          
                                                                                             
    somma -------->>311.53<                                                                  
                                                                                             
    esito --------> KO                                                                       
    errore --------> campo 'Imponibile' non congruente con imponibile RCA/ARD !!

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    1,085
    Mi son dimenticato di dire, e questo rende ancora + misteriosa la cosa, che a volte (con altre casistiche) il test funziona correttamente !

  3. #3
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Deve esserci qualche problema con la precisione sui decimali.
    La tua somma risulta essere minore del valore con cui la confronti.

    Se però fai così funziona
    Codice PHP:
    echo "imponibile_ins: " $imponibile_ins "
    "
    ;
    echo 
    "imponibile_rca_ins: " $imponibile_rca_ins "
    "
    ;
    echo 
    "imponibile_ard_ins: " $imponibile_ard_ins "

    "
    ;
        
    $somma $imponibile_rca_ins $imponibile_ard_ins;
    $somma number_format($somma,2,'.','');
    if (
    $imponibile_ins  != $somma)                            
    {
        echo 
    "somma  -------->>" $somma "<
    "
    ;

        
    $esito 'KO';
        
    $err "campo 'Imponibile' non congruente con imponibile RCA/ARD !!";
        
    $pos_cursore 'fa5';
        goto 
    end;


  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    1,085
    Grazie mille .. :-)
    faccio una prova.
    scusa .. ma come fai a dire che la somma risulta minore ?

  5. #5
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Semplice, basta fare così
    Codice PHP:
    $somma $imponibile_rca_ins $imponibile_ard_ins;

    if (
    $somma $imponibile_ins)
    {
        echo 
    "maggiore";
    }
    else if (
    $somma $imponibile_ins)
    {
        echo 
    "uguale";
    }
    else if (
    $somma $imponibile_ins)
    {
        echo 
    "minore";

    e vedere quale messaggio viene stampato.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.