За последние 24 часа нас посетили 69476 программистов и 5456 роботов. Сейчас ищут 1956 программистов ...

Аутентификация через mysql

Тема в разделе "PHP для новичков", создана пользователем 25517, 5 ноя 2018.

  1. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    @25517 Ты же знаешь о существовании статических методов?
     
    25517 нравится это.
  2. 25517

    25517 Новичок

    С нами с:
    27 май 2018
    Сообщения:
    12
    Симпатии:
    2
    static :)
    --- Добавлено ---
    @nospiou , для какого метода нужен static и зачем?
     
    #52 25517, 8 ноя 2018
    Последнее редактирование: 8 ноя 2018
  3. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    @25517 Ну если тебе дома нужна вилка ты же не покупаешь автомобиль укомплектованный столовыми приборами?) Сделай класс Auth а в нем методы login register forgot logout и т.д
     
    25517 нравится это.
  4. 25517

    25517 Новичок

    С нами с:
    27 май 2018
    Сообщения:
    12
    Симпатии:
    2
    PHP:
    1. <?php
    2.  
    3. Class Auth
    4. {
    5.   public $name;
    6.   public $pass;
    7.  
    8.   function __construct($name , $pass){
    9.  
    10.     $errors = [];
    11.     if (isset($_POST['log_in'])) {
    12.       if (empty($name)) {
    13.         $errors[] = 'Введите логин';
    14.       }
    15.       if (empty($pass)) {
    16.         $errors[] = 'Введите пароль';
    17.       }
    18.       if (empty($errors)) {
    19.         $this->login($name , $pass);
    20.       }else {
    21.         echo $errors['0'];
    22.       }
    23.     }
    24.   }
    25.   public function login($name , $pass){
    26.     require 'config.php';
    27.     $data = $connect->query("SELECT `name` , `password` FROM `users` WHERE `name`='" . $name . "' LIMIT 1")->fetch_assoc();
    28.     if (password_verify ( $pass , $data['password'] ) ) {
    29.       echo 'Sucess';
    30.     }else {
    31.       echo 'Неправильно введён логин или пароль';
    32.     }
    33.   }
    34. }
    35.  
    36. $log_in = new Auth($_POST['login'] , $_POST['password']) ;
    37. ?>
    38.              <form action="" method="post">
    39.  
    40.                <input type="text" class="input" name="login" placeholder="Логин" >
    41.  
    42.                <input type="password" name="password" class="input" placeholder="Пароль">
    43.  
    44.                <input type="submit" name="log_in" class="input-button" value="Войти">
    45.              </form>
    46.              <hr>
     
  5. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    @25517
    public static function login ($login, $password) {}
    $log_in = Auth::login($_POST['login'],$_POST['password'])
    и никакой конструктор не нужен
     
    25517 нравится это.