Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di myotis
    Registrato dal
    May 2010
    Messaggi
    33

    problemi con ciclo while per controllo pwd

    Ciao a tutti,
    ho da poco iniziato a studiare JS e credo sia abbastanza normale avere qualche problema all'inizio, ma oggi mi sto tirando scemo con uno script che dovrebbe, molto semplicemente, controllare la pwd inserita dall'utente in una finestra di prompt e impedire all'utente di proseguire a meno che non inserisca la pwd corretta.
    Facile, no? Beh, ciò nonostante non riesco a farlo andare.
    Ecco il codice:

    <script language="Javascript">

    password=prompt("Benvenuto, inserisci la tua password:");

    while (password!="prova")
    {
    prompt("Password errata, si prega di inserire la password corretta:");
    }
    alert("Benvenuto! Ora puoi iniziare a navigare nel sito");

    </script>

    Credo sia tutto chiaro...a meno che l'utente non inserisca come pwd "prova" il sistema continuerà a chiedere la pwd corretta fino a quando si inserirà "prova" e il sistema la accetterà mostrando un alert di benvenuto.
    Il problema è che se inserisco subito la pwd corretta l'alert di benvenuto viene fuori, ma se sbaglio volontariamente pwd al primo inserimento il sistema continua all'infinito a chiedermi la pwd nonostante inserisca quella corretta dalla seconda volta in poi.
    Insomma, credo avrete capito... non fa quello che voglio che faccia

    Mi dite dove sto sbagliando per piacere? Credo sia un errore di concetto, cioè probabilmente mi manca qualcosa di "teoria"..
    Grazie

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    password resta sempre il primo prompt,
    anche il secondo dev' essere password=prompt('...') se vuoi venga valutata nel ciclo

  3. #3
    Utente di HTML.it L'avatar di myotis
    Registrato dal
    May 2010
    Messaggi
    33
    Ti ringrazio, ci stavo impazzendo e come al solito si trattava di una banale dimenticanza!
    Non avendo associato l'input dell'utente alla var. "password" all'interno del ciclo ovviamente l'input non veniva valutato, giustissimo!
    Grazie ancora.

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    codice:
    <script type="text/javascript">
    tenta = 3;
    password = prompt("Benvenuto, inserisci la tua password - max. 3 tentativi:");
    
    while (password != "password" && tenta>0)
    {
    	tenta --;
    	password = prompt("Password errata, inserisci la password corretta - Tentativi rimasti: " + tenta);
    } 
    if (password=="password")
    {
    	window.alert("Benvenuto nel nostro sito !");
    } else {
    	window.alert("Tentativi esauriti");
    }
    </script>
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    Utente di HTML.it L'avatar di myotis
    Registrato dal
    May 2010
    Messaggi
    33
    Mi sono accorto che mi ero dimenticato di risponderti...

    Grazie per la risposta, e grazie per avermi fatto notare che avevo aperto due post sullo stesso argomento - in genere ci sto attento, ma nella foga di risolvere il problema devo essermene scordato ...

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.