Просмотр исходного кода

Paskaidrojumi kas notiek sesijas failos

master
Vitalijss 5 лет назад
Родитель
Сommit
b647229754
2 измененных файлов: 11 добавлений и 3 удалений
  1. +4
    -3
      auth.php
  2. +7
    -0
      include/check_session.php

+ 4
- 3
auth.php Просмотреть файл

@@ -1,4 +1,5 @@
<?php
//Iekļaujam failu, kurš satur konfigurāciju savineojumam ar datubāzi
include('include/db.php');

//Šis fails meklēs vai šāds lietotājs vspār eksistē, ja jā, tad pāries uz index lapu, lai varētu sākt strādāt.
@@ -20,16 +21,16 @@ while($rinda = mysqli_fetch_assoc($izpildam))

if (password_verify($parole, $paroles_h)) {
//Ja paroles sakrīt, sākam sesiju reģistrējam globālos mainīgos un priecājamies.
// echo 'Password is valid!';
//iztīrām, ja nu kas palicis
//iztīrām, ja nu kas palicis no iepriekšējās sesijas.
session_unset();
//Sākam jaunu svaigu sesiju
session_start();
$_SESSION['mails'] = $epasts;
//Ielādējam sākuma lapu, jeb index.php
header("Location: index.php");
die();
} else {
//echo 'Invalid password.';
//Ja parole nav pareiza, tad beidzam visas sesijas.
// Novācam visus sesiju mainīgos
session_unset();
// iznīcinām sesiju


+ 7
- 0
include/check_session.php Просмотреть файл

@@ -1,9 +1,16 @@
<?php
//Pārbaudām vai sesija ir sākusies.
if (session_status() == PHP_SESSION_NONE) {
session_start();
}
//Ja sesija ir sākusies, bet nesatur pareizos mainīgos, tad iznīcinam to.
if ($_SESSION['mails'] == ''){
header("Location: login.php");
die();
}
/* Autora piebilde. Šī ir ļoti primitīva sesijas drošības pārbaude.
Pēc būtības būtu jāģenerē unikāls sesijas identifikators, tas kaut kur jāglabā uz servera un jāsalīdzina ar to, kas
ir klienta pusē. Ja mainās, sesija ir jāiznīcina.
Bet šim vienkāršajam darbam derēs arī šādi. Kaut gan viegli laužams variants.
*/
?>

Загрузка…
Отмена
Сохранить

Powered by TurnKey Linux.