Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [jsp] IF su variabili di sessione

    Ciao a tutti;

    ho il seguente problema

    ho creato delle variabili di sessione a seguito di un login
    una variabile in particolare mi dice se l'utente č amministratore o utente comune

    codice:
    session.setAttribute("profilo", rs.getString("profilo"))
    Il tutto funzione se voglio stampare la variabile ma se la inserisco in un blocco IF non miriconosce i valori
    codice:
    if(session.getAttribute("profilo") == "admin"){
    
    ....
    
    }
    if(session.getAttribute("profilo") == "user"){
    
    ....
    
    }
    
    Ho provato anche a convertire la variabile in stringa


  2. #2
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    "user".equals(session.getAttribute("profilo"))

  3. #3
    if("user".equals(session.getAttribute("profilo")) {

    ...

    }

    ????

    Cosė???

  4. #4
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    con = si controlla solo se due riferimenti puntano allo stesso oggetto, č stato discusso una miliardata di volte
    dunque sė

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Dato che la relazione di uguaglianza č riflessiva, queste due sono congruenti:
    codice:
    if("user".equals(session.getAttribute("profilo")){ 
    
    e
    
    if(session.getAttribute("profilo").equals("user")){
    Ciao.
    "Perchč spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  6. #6
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    non direi
    nel primo caso viene chiamato il metodo equals di String
    nel secondo caso il metodo equals ma di Object e non funzionerebbe come vuole lui

    cerco di spiegare
    se l'attributo in origine era una stringa hai ragione tu, ma se non ne sei sicuro e vuoi equals di String bisognerebbe fare un cast, dunque di solito, per evitare sorprese uso questo "trucco" per stare tranquillo

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 © 2024 vBulletin Solutions, Inc. All rights reserved.