2014-02-04 3 views
0

Как мы можем перенаправить на другую страницу после проверки пароля, не нажимая ни на какую кнопку? После ввода пароля он должен проверять и автоматически перенаправлять на следующую указанную страницу. Нужно ли добавлять какие-либо функции в тег ввода текстового поля?Проверка пароля без нажатия кнопки

//This is my HTML code. 

<div style="margin-top:27%;margin-left:40%;"> 
      <b><i>Enter pin</i></b> 
</div> 
     <input type="password" id="pwd" autofocus required> 

//This is the javascript. 

<script> 
function login() 
{ 
    logged_in=false; 
    var pin=documemt.getElementById("pwd").value(); 

    if(pin=="hotel") 
    { 
     logged_in=true; 
     window.open("screen3.html","_self"); 
    } 
    else 
     alert("Please enter correct pin"); 
} 
</script> 
+5

Не лучшая идея UX, имхо. Что, если я перестану набирать текст, чтобы запомнить мой пароль. Почему скрипт проверяет мой пароль, если он введен в пол? – dfsq

+0

Вы можете рассмотреть возможность подключения некоторых прослушивателей событий, таких как javascript onBlur или onKeyPress и т. Д. –

+0

проверка на стороне клиента, если пароль соответствует плохой идее, dont – lordkain

ответ

0

После проверки данных входа в систему, используйте Response.Redirect("YourPage.aspx", False). Он перенаправит вас на указанную вами страницу.

2

Возможно, это не полный технический ответ, но стоит упомянуть здесь.

НИКОГДА не храните пароли в JavaScript явно. Пользователь может открыть этот файл и просто прочитать его. Для вашего вопроса есть ответ.

У вас должен быть php-файл, который может проверять пароль (получить из сообщения).

<?php if(isset($_POST['pass']) && $_POST['pass'] == 'hotel') echo "ok"; ?> 

Затем, используя, например, Jquery и AJAX при каждом изменении на входе отправить AJAX запрос на этот PHP файл с публикуемым паролем. Чем сравнить загруженный файл с «ok», и если все в порядке, используйте javascript window.location.replace («новый url»);

Это одно из миллионов возможных ответов. Но помните, что вы должны установить сеанс и запомнить имя пользователя и проверить его на каждом другом сайте. В другом случае кто-то может ввести вручную тот же URL-адрес, что вы перенаправляете, а пароль не нужен.

Надеется, что это помогает Яцеку

PS. этот файл php также должен быть защищен для множественного сравнения паролей, в другом случае легко сломать легко пароли с помощью bruteforce, зная механизм.

PS 2. Тем не менее, на мой взгляд, вы делаете что-то неправильно, и этот подход следует переосмыслить ... Мой предложенный ответ тоже очень, очень, очень общий. Слишком общий.

UPDATE

Может лучше ответ сделать PHP скрипт стандартную для входа с проверкой сервера и кнопку отправки. Затем, используя Javascript, скройте кнопку отправки, а при изменении ввода имитируйте щелчок. Но в том случае, если неверный пароль, страница должна помнить, что пользователь вошел ... Это не сложно писать в PHP:

$input_value = isset($_POST['password']) ? $_POST['password'] : ''; 

Но я действительно голосовать за покидание кнопки отправки, как мать узнала нас;). Thx для ответов, с наилучшими пожеланиями.

+0

Спасибо за ваше ценное предложение. На самом деле я ввел пароль в JavaScript только на время. Все еще изучаю ajax. Я попробую ваше предложение. – Deepika

+0

Нет проблем. Я не знаю, что такое пароль, может быть, это не что-то, что должно быть безопасным (например, игра). Но если это так, вам следует, вероятно, сначала подумать о безопасности, а затем после удобства и простоты работы. С наилучшими пожеланиями, и надежды, которые я помогал. –

+0

PS. Моя идея очень сложная, и я не знаю, стоит ли ее реализовывать. Возможно, простая форма php с проверкой php и кнопка отправки ... Это всего лишь один клик. –

0

Прежде всего, вам нужен способ подключения элемента ввода к функции, если вы не хотите использовать кнопку отправки, вы можете использовать какой-то обработчик on-change/on-keyup для обнаружения ввода.

Javascript bind keyup/down event

В этой функции я бы рекомендовал лучший способ проверки, как сказал Яцек.

Когда вы поняли, как это сделать, вы можете захотеть взглянуть на этот вопрос:

How can I make a redirect page in jQuery/JavaScript?

0

Использование onKeyUP событий ввода текста, как показано ниже в примере.

<input type="text" onKeyUP="login();" id="pwd"> 
<script> 
function login() 
{ 
    logged_in=false; 
    var pin=documemt.getElementById("pwd").value(); 

    if(pin=="hotel") 
    { 
     logged_in=true; 
     window.open("screen3.html","_self"); 
    } 
    else 
    { 
     alert("Please enter correct pin"); 
    } 
} 

</script> 

Demo Of onkeyUp

.keyup()

Я надеюсь, что это поможет.

0

Когда документ загружен или готов, вы можете сделать $ ('# pwd'). Onkeypress = login(); , чтобы связать логин с обработчиком нажатия клавиш вашего окна pwd.

Когда «logged_in == true» Вы можете сделать «window.location =» http://www.google.com «» для перенаправления на целевую страницу.

Я предполагаю, что должен быть какой-то параметр (идентификатор сеанса?) Или аналогичный, чтобы убедиться, что пользователь не просто использовал URL-адрес вручную.

Смежные вопросы