Как бих повторил блок от код в Javascript? (питане на потребителите за потребителско име и парола)

Искам да имам функция за повторение около този бит Javascript код:

<SCRIPT language="JavaScript">

    var usernamecheck="username";
    var passcheck="password"; 
    var username=prompt ('Enter Username',' ');
    var password=prompt ('Enter Password',' ');
    if 
        (username+password==usernamecheck+passcheck) ;
    else
        {window.location="http://www.google.com";}

</SCRIPT>

Искам този код да се повтори 3 пъти, ако потребителят въведе неправилно потребителско име или парола.

Бих искал също така да информирам потребителя, че въведената от него парола или потребителско име е неправилна и да му кажа да опита отново. Когато вече са имали 3 опита, те ще бъдат изпратени на друга уеб страница, напр."http://www.google.com".

Как бих направил това? (Моля помогнете)


person user3445041    schedule 21.03.2014    source източник
comment
Вие не го правите. Това не е ефективно средство за защита на сайта; не го използвайте.   -  person    schedule 21.03.2014
comment
Какво ще кажете за while(wrongdetails){ attempts++;credentials prompt; ако опити==3 пренасочване}?   -  person Banana    schedule 21.03.2014
comment
if(username+password==usernamecheck+passcheck) логиката е грешна ... помислете за if("username"+"password" == "user"+"namepassword")   -  person Tun Zarni Kyaw    schedule 21.03.2014


Отговори (2)


Не можете ли просто да използвате for цикъл?

Например:

<SCRIPT language="JavaScript">

var usernamecheck="username";
var passcheck="password"; 
var username=prompt ('Enter Username',' ');
var password=prompt ('Enter Password',' ');

//create a counter var
var counter = 3;

//Next create a for loop to loop 3 times then if still the credidentials
//are incorrect then send user to google.com
for (var i = 0; i < counter; i++){
    if {
      (username+password==usernamecheck+passcheck) ;
      //put in code to terminate loop
    }
    else
      var username=prompt ('Enter Username',' ');
      var password=prompt ('Enter Password',' ');}
}

window.location="http://www.google.com";
</SCRIPT>

Съгласен съм с всички останали, че това не е добро средство за защита на сайтове, също така не съм запознат с езика javascript (програмирам на Java), но изглежда достатъчно познат.

Също така проверете логиката като някой друг, посочен по-горе

person Biochemist_HK    schedule 24.03.2014

Аз сам го реших! като използвате отговора на Biochemist_HK и го накарате да работи:

        var usernamecheck="name";
        var passcheck="password"; 
        var username=prompt ('Enter Username',' ');
        var password=prompt ('Enter Password',' ');

        //create a counter var
        var counter = 2;

        //Next create a for loop to loop 3 times then if still the credidentials
        //are incorrect then send user to google.com
        for (var i = 0; i < counter; i++){
            if 
                (username+password==usernamecheck+passcheck);

            else {
                alert("The username or password you have entered is incorrect. Please try again.");
                var username=prompt ('Enter Username',' ');
                var password=prompt ('Enter Password',' ');
            }   
        }

        if
            (username+password==usernamecheck+passcheck);

        else //tells user that the username or password they have entered is wrong and will be sent to google.co.nz
            {alert("The username or password you have entered is incorrect. You will now be directed to another webpage.");
            {window.location="http://www.google.co.nz"};};

Thanks for the ones who replied. :)

person user3445041    schedule 24.03.2014