Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2008
    Messaggi
    3

    index con piu' usi

    Gentili utenti,
    leggo da molto tempo i vostri suggerimenti , ma non mi era mai capitata l'occasione di scrivere.
    il problema e' questo , probabilmente per alcuni banale...

    mi serve qualke "dritta" su come creare un index ke propone un form con user e password.
    se i dati sono corretti (confrontandoli anke con semplici stringhe) , viene NUOVAMENTE reindirizzato all'index ke stavolta invece propone un semplice menu, altrimenti viene spedito a una pagina di errore.

    premetto che conosco servlet,beans,jsp e quindi dovro' utilizzare questi strumenti .

    mi sto alquanto incasinando piu' ke altro sulla CONDIZIONE dentro l'index (dato ke suppongo DEVE essercene una) e sui valori coi quali deve operare (nonke' su COME passare tali valori)

    il passaggio dovrebbe essere sostanzialmente questo
    index -> beans -> servlet -> index (in caso di user e psw corretta)

    ripeto ... ho un problema di confusione e concettuale ... non mi serve codice (anke se non mi farebbe skifo e se potete propormi qualke sitarello o qualke script gia' pronto non mi spiacerebbe)

    esempio:

    if (!autenticazione)
    "login form"
    else
    "menu"

    grazie mille ....

  2. #2
    Puoi incentrare il tuo controllo sull'utilizzo di una variabile di sessione.
    Quando fai il submit della form fai partire la tua servlet che controllerà la correttezza delle credenziali inserite. Se sono ok allora setterai una variabile di sessione (chiamata ad esempio utente_loggato) ad OK altrimenti a KO, dopodichè tornerai di nuovo ad index.jsp.

    Nella pagina index ad ogni accesso vai a prelevare il valore di questa variabile di sessione (al primo accesso sarà null) e a seconda del valore visualizzi di nuovo la form oppure il menù:

    In pseudocodice, nella jsp:

    Codice PHP:
    <%
    String loggato session.getAttribute("utente_loggato");

    loggato = (loggato!=null loggato "KO");

    if(
    loggato.equals("OK")){
    %>
         .....
    codice del menù...
    <%
    }else{
    %>
         <
    form action="/tuaServlet" ...
         ......
    <%
    }
    %> 
    Nella servlet:

    Codice PHP:
    ...

    String user request.getParameter("user");
    String pass request.getParameter("pass");

    if (
    user.equals("...") && pass.equals("...")) {  
      
    session.setAttribute"utente_loggato""OK" );
    }else{
      
    session.setAttribute"utente_loggato""KO" );
    }

    ... 
    Al mio segnale... scatenate l'inferno!

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2008
    Messaggi
    3
    dire che sei stato d'aiuto e' veramente poco , grazie mille

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2008
    Messaggi
    3
    e' normale la richiesta del casting in String di
    String loggato = session.getAttribute("utente_loggato");
    ??

    altra cosa perdonami ... nn so il significato di questo
    loggato = (loggato!=null ? loggato : "KO");

  5. #5
    Originariamente inviato da decave
    e' normale la richiesta del casting in String di
    String loggato = session.getAttribute("utente_loggato");
    ??
    Un oggetto String è un Object, pertanto la riga precedente è perfettamente lecita.

    altra cosa perdonami ... nn so il significato di questo
    loggato = (loggato!=null ? loggato : "KO");

    Trattasi dell'operatore ternario; questo particolare operatore agisce su tre operandi e viene indicato dai simboli "?" e ":", precisamente la forma di questo operatore e' la seguente

    espressione ? valore1 : valore2

    dove il compilatore prima valuta espressione , se risulta vera viene restituito il valore di valore1 altrimenti viene restituito il valore di valore2. Ad esempio per chiarire le idee, supponiamo di dover assegnare ad una variabile x il massimo tra a e b; bene quello che normalmente si scriverebbe come

    if (a>b){
    x=a;
    }else{
    x=b;
    }

    con l'operatore ternario viene sintetizzato nell'unica riga

    x = (a>b ? a : b)

    Nel tuo caso ho semplicemente controllato che loggato sia diverso da null; in questo caso lascio il valore che ha. Se invece è null allora assegno come valore KO (vuol dire che l'utente non è loggato)
    Al mio segnale... scatenate l'inferno!

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.