Преглед на файлове

Paskaidrojumi kas notiek sesijas failos

master
Vitalijss преди 5 години
родител
ревизия
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.
*/
?>

Loading…
Отказ
Запис

Powered by TurnKey Linux.