Login: admin
Hasło: admin
baza ->baza_cms
-- phpMyAdmin SQL Dump
-- version 5.1.1
-- https://www.phpmyadmin.net/
--
-- Host: 127.0.0.1
-- Czas generowania: 01 Mar 2022, 12:53
-- Wersja serwera: 10.4.21-MariaDB
-- Wersja PHP: 8.0.10
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
--
-- Baza danych: `baza_cms`
--
-- --------------------------------------------------------
--
-- Struktura tabeli dla tabeli `users`
--
CREATE TABLE `users` (
`id` int(6) NOT NULL,
`login` varchar(255) NOT NULL,
`pass` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
--
-- Zrzut danych tabeli `users`
--
INSERT INTO `users` (`id`, `login`, `pass`) VALUES
(1, 'admin', '$2y$10$Y1U9pwLzteMGAwvMHMXGGe.h3zMiTR2lKqYAzBKSQtytThGHZJASW');
--
-- Indeksy dla zrzutów tabel
--
--
-- Indeksy dla tabeli `users`
--
ALTER TABLE `users`
ADD PRIMARY KEY (`id`);
--
-- AUTO_INCREMENT dla zrzuconych tabel
--
--
-- AUTO_INCREMENT dla tabeli `users`
--
ALTER TABLE `users`
MODIFY `id` int(6) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;
COMMIT;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
conn_data.php
<?php
$serwer='localhost'; //127.0.0.1
$user='root';
$pass='';
$baza='baza_cms';
//łączenie z bazą
$db = @new mysqli($serwer, $user, $pass, $baza); //podejście obiektowe - korzystamy z klasy PHP o nazwie mysqli
conn_close.php
<?php
$db->close(); //zamykamy połączenie
?>
index.php
<?php
#login:admin
#hasło:admin
session_start();
include_once('conn_data.php');
//sprawdzamy czy się łączy w podejściu obiektowym
if ($db->connect_error) {
die('Błąd połączenia: ' . $db->connect_error);
} else {
if (!isset($_POST['logowanie'])) {echo 'zaloguj się<br>';$msg='';}
else
{
$msg='';
$login=htmlspecialchars(stripslashes(trim($_POST['login'])));
$haslo=htmlspecialchars(stripslashes(trim($_POST['haslo'])));
if (empty($login) || empty($haslo))
{
$msg='Brak loginu lub hasła!';
}
else
{
$sql="SELECT * FROM `users` WHERE `login` = ?";
$stmt = $db->prepare($sql);
$stmt->bind_param("s", $login);
$stmt->execute();
$wynik = $stmt->get_result();
$ile_znaleziono = $wynik->num_rows;
if ($ile_znaleziono>0) {
$kolumna=$wynik->fetch_array();
if(password_verify($haslo,$kolumna['pass'])){
$_SESSION['msg']='Jesteś zalogowany';
$_SESSION['witaj']=$login;
header("location: main.php");
}
else { $msg='Podałeś błedne hasło!';}
}
else { $msg='Nie ma w bazie użytkownika o takim loginie!';}
}
}
}
include_once('conn_close.php');
?>
<!DOCTYPE html>
<html>
<head>
<title>Moja strona</title>
<meta charset="UTF-8">
</head>
<body>
<form method="post" action="">
<span style="color: red;"><?=$msg;?></span>
<input type="text" name="login">
<input type="password" name="haslo">
<button type="submit" name="logowanie">Loguj
</form>
</body>
</html>
main.php
<?php
session_start();
if($_SESSION['witaj']){
echo 'Witaj: '.$_SESSION['witaj'].'<br>';
if (isset($_GET['wyloguj'])) {
session_destroy();
header("location: index.php");
}
echo "<a href=\"?wyloguj\">wyloguj</a>";
}else{
header("location: index.php");
}