Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <form id="auth">
- <input type="password" id="pass" autofocus /><br/>
- <div id="err" style="display: none; color: red;">Кривой пароль</div>
- <button>Войти</button>
- </form>
- <script>
- auth.addEventListener('submit', function (evt){
- evt.preventDefault(); // отменяем действие по умолчанию
- var xhr = new XMLHttpRequest;
- xhr.open('POST', '/ctrl.php', false); // отправляем синхронный запрос на сервер
- xhr.send('pass='+pass.value);
- if( xhr.responseText == 'invalid' ){ // проверяем ответ
- err.style.display = ''; // выводим ошибку
- } else {
- location.href = xhr.responseText; // переходим на страницу
- }
- });
- </script>
- <?php
- $pass = isset($_POST['pass']) ? trim($_POST['pass']) : '';
- if($pass == $secret){
- echo "/secret-page.html";
- } else {
- echo "invalid";
- }
- ?>
- <?php
- $valid_passwords = array ("login" => "pass");
- $valid_users = array_keys($valid_passwords);
- $user = $_SERVER['PHP_AUTH_USER'];
- $pass = $_SERVER['PHP_AUTH_PW'];
- $validated = (in_array($user, $valid_users)) && ($pass == $valid_passwords[$user]);
- if (!$validated) {
- header('WWW-Authenticate: Basic realm="My Realm"');
- header('HTTP/1.0 401 Unauthorized');
- die ("Not authorized");
- }
- // Тут мы пишем те
- echo "<p>Здравствуйте $user.</p>";
- echo "<p> Поздравляем, Вы успешно прошли авторизацию.</p>";
- ?>
- $('a').click(function(e){
- e.preventDefault();
- $.ajax({ type: 'POST',
- url: 'login-ajax.php',
- success: function(response){
- if (response == 'accept') {
- $('#do').submit();
- } else {
- $('div').fadeIn(400);
- }
- },
- error: function(response){
- $('div').fadeIn(400);
- }
- });
- });
- <?php
- $pass = ''; if (isset($_POST['pass']) { $pass = $_POST['pass']; }
- /.. обезопасить входящие данные ../
- /.. сверить с базой ../
- if ( %ПАРОЛЬ СОВПАЛ% ) { die('accept'); } else { die('error'); }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement