Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Condizioni if annidate

  1. #1
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407

    Condizioni if annidate

    Ciao a tutti.

    Vi chiedo un aiuto perchè non ci riesco.

    In una tabella mysql ho due campi data: data_A e data_B
    Sia data_A che data_B possono assumere i seguenti valori:

    1) Una qualsiasi data valida nel formato AAAA-MM-GG;
    2) Una data fittizia identificata da 0000-00-00;
    3) Valore del campo vuoto e/o nullo.

    Ad esempio:
    codice:
    DATA_A		DATA_B
    2011-04-18	2011-07-31
    2011-04-18	
    2011-04-18	2011-05-31
    2011-04-08
    2011-04-06
    2011-04-04
    2011-04-01	
    0000-00-00	0000-00-00
    Quello che devo ottenere:

    1) se la differenza tra la data di oggi è superiore a 5 devo stampare il pallino colore verde;
    2) se la differenza tra la data di oggi è compresa tra 1 e 5 devo stampare il pallino colore giallo;
    3) se la la data di oggi è superiore alla data_b devo stampare il pallino colore rosso;
    4) se la data_b è uguale a 0000-00-00 o nulla e/o vuota devo stampare il pallino colore grigio;

    Ed ho scritto così:
    codice:
                    Response.Write "<td align=left>"
                    if Trim(objRS("DATA_B")) <> "0000-00-00" then
                       strDataDifferenza = DATEDIFF("d", Date(), objRS("DATA_B"))                   
                          if cInt(strDataDifferenza) > 5 then                                   
                             Response.Write "<img border=0 src=/images/bullett/forestbul.gif alt='Assegnata'>"
                          elseif cInt(strDataDifferenza) >= 1 AND cInt(strDataDifferenza) <= 5 then
                             Response.Write "<img border=0 src=/images/bullett/goldbul.gif alt='In scadenza'>"
                          else
                             Response.Write "<img border=0 src=/images/bullett/redbul.gif alt='Scaduta'>"
                          end if                                     
                    else
                       Response.Write "<img border=0 src=/images/bullett/greybul.gif alt='Non assegnata'>"    
                    end if    
                    Response.Write "</td>"
    Adesso vorrei che nel caso di records senza data_b, quindi con data_b vuota e/o nulla, si stampasse il pallino colore viola... ma non ci riesco o mi stampa tutti pallini viola al posto dei grigi oppure solo grigi... sapete aiutarmi?

    Grazie

  2. #2
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    codice:
                    if Trim(Rs("DATA_B")) <> "0000-00-00" then
                    
                    if Trim(Rs("DATA_B") & "[]") = "[]" then
                       Response.Write "  = viola
    " 
                    else                               
                       strDataDifferenza = DATEDIFF("d", Date(), formatGMTDate(rs("DATA_b"), 0, "yyyy-mm-dd"))                   
                          if cInt(strDataDifferenza) > 5 then                                   
                             Response.Write formatGMTDate(Date, 0, "yyyy-mm-dd") & "; " & formatGMTDate(rs("DATA_b"), 0, "yyyy-mm-dd") & "; " & strDataDifferenza & "  = verde
    "
                          elseif cInt(strDataDifferenza) >= 1 AND cInt(strDataDifferenza) <= 5 then
                             Response.Write formatGMTDate(Date, 0, "yyyy-mm-dd") & "; " & formatGMTDate(rs("DATA_b"), 0, "yyyy-mm-dd") & "; " & strDataDifferenza & "  = giallo
    "
                          else
                             Response.Write formatGMTDate(Date, 0, "yyyy-mm-dd") & "; " & formatGMTDate(rs("DATA_b"), 0, "yyyy-mm-dd") & "; " & strDataDifferenza & "  = rosso
    "
                          end if    
                          end if                                 
                    else
                       Response.Write strDataDifferenza & "  = grigio
    "    
                    end if
    Non va... :S

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.