закрытие браузера после неудачной попытки входа в систему 3 раза

после неудачного входа в систему 3 раза (неверный пароль, имя пользователя) я хочу закрыть браузер / окно / вкладку. Как я могу сделать это в JavaScript или PHP? а также можете ли вы дать мне несколько советов о том, что я могу сделать с моей системой, когда пользователь не сможет войти в систему 3 раза. Спасибо.

13.10.2009 07:15:37
7 ОТВЕТОВ

В JavaScript вы можете позвонить ...

window.close();

Но это приведет к тому, что браузер отобразит запрос, запрашивающий у пользователя подтверждение, что он хочет закрыть браузер (если вы не закрываете дочернее окно, которое вы ранее создали).

Обойти эти подсказки невозможно.

4
13.10.2009 07:17:45

Вы можете перенаправить страницу на другую страницу?

1
15.07.2011 09:35:07

Извините, это немного нестандартно, но: не делайте этого. Есть веские причины, по которым такие вещи window.close()не будут делать это без приглашения. Я допускаю, что есть мыслимые случаи, когда это может быть хорошим подходом, но, обходя подобные меры контроля пользователя, вы, вероятно, в конечном итоге выстрелите себе в ногу, даже если цель хорошая.

Несколько вариантов того, как может происходить эта стрельба по стопам:

  • Вы думаете, что это хорошая идея сделать это в вашем случае, но, к сожалению, пользователи так не считают. Даже если вы были уверены, что это будет лучшая юзабилити вещь, о которой кто-либо когда-либо думал.
  • Взлом включает в себя некоторые вещи, которые где-то ломают другие вещи. В другом браузере. В более старой версии. С определенным плагином браузера. С некоторыми необычными настройками пользователя.
  • Будущая версия браузера делает хакеррон неудачным провалом, и вы каким-то образом создали свою модель взаимодействия, чтобы зависеть от хакерна, даже если вы были уверены, что выбрали альтернативный подход на всякий случай ... только вы этого не сделали, в этом одном месте потому что вы сами использовали взлом и не заметили, что ожидаете, что он всегда будет работать.
  • Взлом работает нормально ... но только когда смотришь. В некоторых довольно нормальных условиях, которые не должны на это влиять, это внезапно ломает что-то еще, и вы заканчиваете тем, что тратите дни на отладку какой-то странной дополнительной проблемы, которая в конечном итоге вызывается взломом. Я имею в виду, что взломать плечо не должно было что-то подобное. Это действительно не должно. Но это так.
20
13.10.2009 08:11:04
Согласитесь, все, что пытается контролировать браузер пользователя, не должно поощряться. Хорошо написанный ответ.
Neil Aitken 13.10.2009 08:31:11

Я согласен с Илари Каджасте, когда он говорит: «Не делай этого». Последнее, что хочет пользователь - это непредвиденное поведение. Я никогда не сталкивался с веб-сайтом, который закрывает окно после неверных попыток входа в систему, поэтому он почти наверняка запутает ваших пользователей. Во-вторых, он уничтожит любую историю, которую пользователь имеет в своей кнопке «Назад», что расстроит некоторых пользователей.
Когда вы получаете несколько неудачных входов в систему, вы можете запретить им входить в систему в течение определенного периода времени (например, 10 минут). Вы можете сделать это, сохранив время их третьего недопустимого входа в вашу базу данных и проверив при последующих входах в систему, сколько времени прошло с момента их последней попытки. Если это ниже вашего порога, вы даже не проверяете пароль. Просто убедитесь, что вы объяснили, что кто-то не может войти в систему в течение 10 минут после 3 неудачных входов

5
13.10.2009 07:37:30

Просто временно заблокируйте учетную запись пользователя на стороне сервера на n минут.

3
13.10.2009 07:43:17

Если вы собираетесь заблокировать учетную запись пользователя, не делайте этого после 3 попыток.
У меня так много паролей, что я должен попробовать хотя бы 5 раз на некоторых сайтах, прежде чем получить правильный ....

1
13.10.2009 08:20:45
  1. Защита от дальнейших попыток входа в систему на стороне сервера.
  2. Либо перенаправьте на страницу с ошибкой, как упоминалось в drorhan, либо отобразите сообщение типа «извините, слишком много попыток входа в систему, повторите попытку через час» на странице входа в систему вместо полей ввода логина / пароля.

Как говорит нам SEO, вы действительно никогда не захотите заставить пользователя отойти от своего сайта, в SEO, который называется «Потерянная прибыль на инвестиции», противоположность того, что вы делаете для SEO. : p Перенаправление на другую страницу на вашем собственном сайте намного предпочтительнее.

1
27.10.2009 21:15:04