1 Востаннє редагувалося kerimov_e (22.02.2020 21:51:34)

Тема: Форма авторизації з БД. Не вдається її створити.

Допоможіть будь-ласка
https://replace.org.ua/uploads/images/8036/9fb0af5823a36cfcdf53c3d85e3e5804.png https://replace.org.ua/uploads/images/8036/4030f1f51f704de1f9559a661fdc16cc.png

Результатом є перекидування пусту сторінку, але я написав в файлі, щоб писало щось типу "Вітаю".

Файл: admin.php

                    <!-- /форма авторизації для співробітників  -->
                 <form action ="auth.php" method="post">
                    <input type="text" class="form-control" name="login" placeholder="Логін"> <br>
                    <input type="password"  class="form-control"name="pass" placeholder="Пароль"><br>
                     <button class="btn btn-succes" type="submit">Авторизація</button>
                </form>

Файл: auth.php

<?php
    session_start();
        ?>
    <?php require_once "database.php"; ?>
     
    <?php
    
    if(isset($_SESSION["session_username"])){

    header("Location: intropage.php");
    }
 
    if(isset($_POST["login"])){
 
    if(!empty($_POST['username']) && !empty($_POST['password'])) {
    $username=htmlspecialchars($_POST['username']);
    $password=htmlspecialchars($_POST['password']);
    $query =mysql_query("SELECT * FROM usertbl WHERE username='".$username."' AND password='".$password."'");
    $numrows=mysql_num_rows($query);
    if($numrows!=0)
 {
while($row=mysql_fetch_assoc($query))
 {
    $dbusername=$row['username'];
  $dbpassword=$row['password'];
 }
  if($username == $dbusername && $password == $dbpassword)
 {
 
    //  session_start();
     $_SESSION['session_username']=$username;    

   header("Location: intropage.php");
    }
    } else {
      $message = "Invalid username or password!";
    
    echo  "Invalid username or password!";
 }
    } else {
    $message = "All fields are required!";
    }
    }
    ?>

Файл: logout.php

<?php
    session_start();
    unset($_SESSION['session_username']);
    session_destroy();
    header("location:login.php");
    ?>

Файл:intropage.php

<div id="welcome">
 <h2>Вітаємо, <span> USER </span></h2>!
    <p><a href="logout.php">Вийти</a> з системи</p>
</div>

2

Re: Форма авторизації з БД. Не вдається її створити.

І в чому проблема?

3

Re: Форма авторизації з БД. Не вдається її створити.

Проблема в тому, що не виводить нічого.

VTrim написав:

І в чому проблема?

4

Re: Форма авторизації з БД. Не вдається її створити.

Я не знаю як і звідки ви це все пишете, але для початку, у вас не збігаються назви POST полів у html формі та самому скрипті.

Подякували: leofun01, ostap34PHP2

5

Re: Форма авторизації з БД. Не вдається її створити.

Все як в cкрипті виправив все одно результату немає

 <form action ="auth.php" method="post">
                    <input type="text" class="form-control" name="username" placeholder="Логін"> <br>
                    <input type="password"  class="form-control"name="password" placeholder="Пароль"><br>
                     <button class="btn btn-succes" type="submit">Авторизуватися</button>
                </form>
                </div>
VTrim написав:

Я не знаю як і звідки ви це все пишете, але для початку, у вас не збігаються назви POST полів у html формі та самому скрипті.

6

Re: Форма авторизації з БД. Не вдається її створити.

kerimov_e написав:

Все як в cкрипті виправив все одно результату немає

 <form action ="auth.php" method="post">
                    <input type="text" class="form-control" name="username" placeholder="Логін"> <br>
                    <input type="password"  class="form-control"name="password" placeholder="Пароль"><br>
                     <button class="btn btn-succes" type="submit">Авторизуватися</button>
                </form>
                </div>

kerimov_e, виконайте покроково:

  1. Відкрийте валідатор

  2. Відправте вашу HTML розмітку на перевірку (валідацію)

  3. Виправте всі помилки (Error) по порядку, в якому вони подані

  4. Якщо всі перелічені помилки виправлені, і документ не валідний -> перейдіть до пункту 2

  5. Якщо всі перелічені помилки виправлені, і документ валідний (Valid | successfully checked) -> перевірте чи результат є очікуваним

  6. Якщо результат вас не влаштовує -> продовжуйте писати в цій темі

Подякували: ostap34PHP1

7

Re: Форма авторизації з БД. Не вдається її створити.

kerimov_e написав:

Все як в cкрипті виправив все одно результату немає

 <form action ="auth.php" method="post">
                    <input type="text" class="form-control" name="username" placeholder="Логін"> <br>
                    <input type="password"  class="form-control"name="password" placeholder="Пароль"><br>
                     <button class="btn btn-succes" type="submit">Авторизуватися</button>
                </form>
                </div>
VTrim написав:

Я не знаю як і звідки ви це все пишете, але для початку, у вас не збігаються назви POST полів у html формі та самому скрипті.

if(isset($_POST["login"])){
 

А це замінили на username

8

Re: Форма авторизації з БД. Не вдається її створити.

Погано користуватися mysql_* у 2020.

Пусті рядки зовні <?php ?> - це вже віддача контенту, це може викликати "Headers already sent". Треба подивитися логи.