Sfoglia il codice sorgente

Paskaidrojumi kas notiek sesijas failos

master
Vitalijss 5 anni fa
parent
commit
b647229754
2 ha cambiato i file con 11 aggiunte e 3 eliminazioni
  1. +4
    -3
      auth.php
  2. +7
    -0
      include/check_session.php

+ 4
- 3
auth.php Vedi File

@@ -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 Vedi File

@@ -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…
Annulla
Salva

Powered by TurnKey Linux.