Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
Ханапов
2 / 2 / 2
Регистрация: 26.01.2013
Сообщений: 59
#1

Скрипт авторизации

12.11.2015, 14:08. Просмотров 563. Ответов 2
Метки нет (Все метки)

Есть задача - нужно написать скрипт авторизации. Причем, не используя механизм сессий. Если человек (его логин\пароль) есть в текстовом документе, то ему надо показать секретную часть. Все это реализовать в одном файле. Написал. Беда в том, что скрипт не может получить логин и пароль от человека. Поэтому выводит что на и что не надо. Что не так? Прилагаю код и скрин с ошибками.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<html>
    <head>
        <title>Auth</title>
    </head>
    <body>      
        
    <?php
        function showLogInPadding()
        {
            echo '<form action="padding.php" method="POST">'.
            '<h1> Авторизация </h1>'.
            '<table>'.
            '<tr>'.
            '<td><p><b>Логин:</b></p></td>'.
            '<td><input name="login" type="text" size="7" maxlength="10"></td>'.
            '</tr>'.
            '<tr>'.
            '<td><p><b>Пароль:</b></p></td>'.
            '<td><input name="pas" type="password" size="7" maxlength="10"></td>'.
            '</tr>'.
            '<tr>'.
            '<td><p><input name="rem" type="checkbox" value = "check">  запомнить<br>'.
            '</tr>'.
            '</table>'.
            '<p><input type="submit" name="submit" value="Войти"></p>'.
            '</form>';
        }
        
        
        function showConfidentPadding()
        {
            echo '<form action="padding.php" method="POST">'.
            '<h1>Закрытая часть</b1><br>'.
            "<h5>Здравствуйте._POST['login'].</h5><br>".
            '<p><input type="submit" name="submit" value="Выйти"></p>'.
            '</form>';  
        }
            
            
        function isRegistered($sacred_string, $save_user)
        {
            define("MAX_DATA_LEN",30);  //ограничение на строку логин|пароль при считывании
            $fileway = 'C:\xampp\htdocs\www\user.txt';
            $sacred_file = fopen($fileway , "r");  // файл с логинами|паролями
            
            if ($sacred_file)  // если файл есть
            {   
                while(!feof($sacred_file)) // и пока не его конец
                {
                    $text_cut = fgets($sacred_file, MAX_DATA_LEN); // считываем их него строку
                    if ($sacred_data == $text_cut) // и сравниваем
                    {
                        if ($save_user)   // если галка стоит
                        {
                            return true;   // если есть совпадение - человек зарегистрирован, вырубить цикл
                            fclose($sacred_file);
                            setcookie("Register", $sacred_string, time() + 31556926);  // запомнить пользователя на год
                            break;}
                        else { // если же галка не стоит
                            return true;   // если есть совпадение - человек зарегистрирован, вырубить цикл
                            fclose($sacred_file);
                            setcookie("Register", $sacred_string);   // то куки удалится после закрытия браузера
                            break;
                        }   
                    }
                }
            }
            fclose($sacred_file);
            return false;
        }
        
        echo "$login.<br>.$pass";
        if (empty($_COOKIE['Register'])) 
        {   
            showLogInPadding();
            if (!(preg_match("/^([a-zA-Z0-9_]){5,30}$/",@$_POST['login']))) $login = trim(@$_POST['login']);  // добавить проверки  с прег матчем
            if (preg_match("/^[\d]+$/",@$_POST['pas'])) $pass = trim((@$_POST['pas']));
            isset ($_POST['rem']) ? $save_user = true : $save_user = false;
            
            if (isRegistered($login.'|'.$pass)) showConfidentPadding(); else echo "<h1>Вы не зарегистрированы</h1>";
        } else showConfidentPadding();  
    ?>
    </body>
</html>
0
Миниатюры
Скрипт авторизации  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.11.2015, 14:08
Ответы с готовыми решениями:

Скрипт авторизации на сайте
Помогите со скриптом для авторизации на сайте. Очень буду благодарен.

Простой скрипт авторизации
Нашел такой скрипт, понимаю что он устарел и не безопасный но с чего то надо...

переделать скрипт авторизации
Помогите переделать скрипт авторизации, нужно переделать под большое количество...

Скрипт регистрации и авторизации
Помогите написать php скрипты: регистрации(формы:Логин, Имя, Фамилия,...

Скрипт авторизации(Ошибка)
Всем привет! Если правильно или не правильно ввожу логин и ключ, то всегда...

2
n0n4m3r
25 / 25 / 15
Регистрация: 12.10.2013
Сообщений: 183
12.11.2015, 14:29 #2
Не объявленные переменные $login $pass в файле padding.php в 72 строке, например. Тоже самое и в 80 строке.
$sacred_data в 51 строке и $save_user в 54
0
Ханапов
2 / 2 / 2
Регистрация: 26.01.2013
Сообщений: 59
12.11.2015, 15:00  [ТС] #3
Я знаю, спасибо. Я не могу решить эту проблему. Куда бы я не ставил код получения логина с паролем, ошибка сохраняется
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.11.2015, 15:00

Скрипт авторизации без mysql
Помогите пожалуйста написать простой скрипт авторизации без mysql , т.е чтоб...

Неправильно работает скрипт авторизации
Добрый день. У меня есть скрипт авторизации. Входит нормально, выход тоже...

Скрипт авторизации на Human Emulator
Помогите написать скрипт авторизации на маиле, для Human Emulator, где логины...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru