Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    Strano comportamento in un confronto variabili

    Salve a tutti
    Sto implementando un db con un campo nuovo che contiene il nome l'utente
    DB03_r_user
    Confronto questo campo con il nome utente corrente che ho memorizzato sulla variabile
    session(s_user)

    Leggendo i vari record sul db effettuo questo confronto:

    If rs("DB03_r_user") <> session("s_user") Then
    ...codice...
    End IF

    Molti record non contengono nulla nel campo DB03_r_user
    eppure il codice non viene eseguito.

    Allora ho scritto il confronto nel seguente modo e funziona:

    If rs("DB03_r_user") = session("s_user") Then
    ...nulla...
    Else
    ...codice...
    End IF

    Anzicchè utilizzare l'operatore diverso (<>)
    ho utilizzato l'operatore uguale (=) e ho messo il codice dopo l'else.
    E funziona !!!
    Ma che senso ha seondo voi?

    ciao
    Pino

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Prova usando una variabile di appoggio anziché confrontare direttamente il contenuto del campo del record.

    Roby

  3. #3
    No non funge nemmeno.
    Credo, ma devo verificarlo, che il problema sia legato al fatto che DB03_r_user è un campo che ho aggiunto al db e che quindi, per tutti i record preesistenti, contiene NULL.

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Ah allora sì.

    codice:
    If rs("DB03_r_user") &"[]" <> session("s_user") &"[]" Then
    Roby

  5. #5
    Funziona !!! grazie
    ma cosa significano le due parentesi quadre?
    If rs("DB03_r_user") &"[]" <> session("s_user") &"[]" Then

  6. #6
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Potevi metterci quello che volevi.
    In pratica forzano la conversione del contenuto del campo: se contiene null ora non lo contiene più.

    Roby

  7. #7
    roby! andrebbe citata la fonte per la pluridecorata!

  8. #8
    Scusami Roby, ma... sono un pò tardo ;-)
    se a
    rs("DB03_r_user")

    aggiungo
    &"[]"

    cosa succede?
    che significa "forzano la conversione"?

    non avevo mai letto nulla in proposito (d'altronde si ha sempre da imparare!)

  9. #9
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Originariamente inviato da optime
    roby! andrebbe citata la fonte per la pluridecorata!
    Chiedo venia... E' come dover citare Dante tutte le volte se si pronunciano versi della Divina...
    Sono cose che sanno tutti...


    Roby

  10. #10
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Originariamente inviato da rainbow.pino
    Scusami Roby, ma... sono un pò tardo ;-)
    se a
    rs("DB03_r_user")

    aggiungo
    &"[]"

    cosa succede?
    che significa "forzano la conversione"?

    non avevo mai letto nulla in proposito (d'altronde si ha sempre da imparare!)
    NULL è NULL non è stringa vuota.

    Se a NULL aggiungi un qualcosa che lo trasforma in stringa senza comprometterne il significato puoi effettuare confronti tra stringhe.

    Roby

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.