Mam problem ze stroną która ma być dostępna tylko dla zalogowanych użytkowników mianowicie strona nie sprawdza czy jest się zalogowanym tylko od razu przenosi do strony docelowej zamiast to strony logowania.
logowanie.php
<head>
<link rel="stylesheet" type="text/css" href="loginstyle2.css">
</head>
<body>
<div id="panellogowania">
<form method="POST" action="logowanie.php">
<b>Login:</b>
<input type="text" id="login" name="login" required> <br><br>
<b>Haslo:</b>
<input type="password" id="haslo" name="haslo" required> <br><br>
<input type="submit" value="Zaloguj" name="loguj">
</form>
</div>
</body>
<?php
$servername = "localhost";
$user = "root";
$pass = "";
$dbname = 'db101';
$link = mysqli_connect($servername, $user, $pass, $dbname);
date_default_timezone_set('Europe/Warsaw');
session_start();
if($link)
{
echo "Nawiązano Połączenie Z Bazą Danych";
}
else {
echo "Nie nawiązania Połączenia Z Bazą Danych";
}
if (isset($_POST['loguj']))
{
$login = ($_POST['login']);
$haslo = ($_POST['haslo']);
$ip = ($_SERVER['REMOTE_ADDR']);
// echo "SELECT login, haslo FROM uzytkownicy WHERE login = '".$login."' AND haslo = '".$haslo."' ORDER BY punkty DESC";
if (mysqli_num_rows(mysqli_query($link, "SELECT login, haslo FROM uzytkownicy WHERE login = '".$login."' AND haslo = '".$haslo."'")) > 0)
{
mysqli_query($link, "UPDATE uzytkownicy SET logowanie = '".date('Y-m-d H:m:s')."', `ip` = '".$ip."' WHERE login = '".$login."'");
session_start();
$_SESSION['zalogowany'] = true;
$_SESSION['login'] = $login;
header('Location: index.php');
}
else {
if($_SESSION['haslo'] != $haslo OR $_SESSION['login'] != $login)
{
echo "Niepoprawny login lub haslo!";
}
}
}
?>
Sprawdzanie (index.php):
<?php
$servername = "localhost";
$user = "root";
$pass = "";
$dbname = 'db101';
$link = mysqli_connect($servername, $user, $pass, $dbname);
require "logowanie.php";
if(isset($_SESSION["zalogowany"]) AND $_SESSION["zalogowany"] === true)
{
header("Location: index.html");
}
else{
header("Location: logowanie.php");
}
?>
Strona docelowa (index.html):
<?php
$servername = "localhost";
$user = "root";
$pass = "";
$dbname = 'db101';
$link = mysqli_connect($servername, $user, $pass, $dbname);
require 'index.php';
?>
<!DOCTYPE html>
<html>
<head>
<title>Forum</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<h1>
<h1>Forum</h1>
</h1>
<body>
<ul>
<li><a href="index.html">Strona Glowna</a></li>
<li><a href="rankingpvp.php">Rankingi</a></li>
<li><a href="profile.php">Profile</a></li>
<li><a href="kontakt.html">Kontakt</a></li>
<li2><a href="wyloguj.php">Wyloguj</a></li2>
</ul>
</body>
</html>