<?php
  session_start();
  
  function checkPass($user, $pass)
  {
    //Nawiązanie połączenia z bazą
    if (!$db = mysqli_connect("localhost", "php", "test")){
      //echo('Wystąpił błąd podczas próby połączenia z bazą...<br>');
      return false;
    }

    if(!mysqli_select_db($db, 'testphp')){
      mysqli_close($db);
      //echo 'Wystąpił błąd podczas wyboru bazy danych: testphp <br>';
      return false;
    }

    //Zabezpieczenie znaków specjalnych
    $user = mysqli_real_escape_string($db, $user);
    $query = "SELECT haslo, nazwa, strona FROM users WHERE nazwa='$user'";

    //Wykonanie zapytania
    if(!$result = mysqli_query($db, $query)){
      mysqli_close($db);
      //echo 'Wystąpił błąd: nieprawidłowe zapytanie...<br>';
      return false;
    }

    //Błędna liczba wierszy wynikowych
    if(mysqli_num_rows($result) != 1){
      mysqli_close($db);
      return false;
    }

    //Odczyt wyników zapytania
    if(!$row = mysqli_fetch_row($result)){
      mysqli_close($db);
      //echo 'Wystąpił błąd podczas pobierania wyników zapytania: ...<br>';
      return false;
    }
    
    mysqli_close($db);
    
    //ostateczne sprawdzenie poprawności danych otrzymanych z formularza
    if($row[0] == $pass){
      if($row[2] != ''){
        $result = array($row[1], $row[2]);
      }
      else{
        $result = array($row[1], 'glowna.php');
      }
    }
    else{
      $result = false;
    }
    return $result;
  }
  
  if(isset($_SESSION['zalogowany'])){
    header("Location: glowna.php");
    exit();
  }
  else if(isset($_POST['user']) && isset($_POST['haslo'])){
    if($user = checkPass($_POST['user'], $_POST['haslo'])){
      $_SESSION['zalogowany'] = $user[0];
      header("Location: {$user[1]}");
      exit();
    }
    else{
      $_SESSION['komunikat'] = "Niepoprawne dane logowania.";
      header("Location: index.php");
      exit();
    }
  }
  if(isset($_SESSION['komunikat'])){
    $komunikat = $_SESSION['komunikat'];
    unset($_SESSION['komunikat']);
  }
?>

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Moja strona WWW</title>
  </head>
  <body>
    <div>
      <form action = "http://localhost/index.php"
            method = "post">
      <?php 
        if(isset($komunikat)):
      ?>
      <div><?=$komunikat?></div>
      <?php
        endif; 
      ?>
        <table>
          <tr>
            <td>Użytkownik:</td>
            <td>
              <input type="text" name="user">
            </td>
          </tr><tr>
            <td>Hasło:</td>
            <td>
              <input type="password" name="haslo">
            </td>
          </tr><tr>
            <td colspan="2" style="text-align:center">
              <input type="submit" value="Wejdź">
            </td>
          </tr>
        </table>
      </form>
    </div>
  </body>
</html>
