Bläddra i källkod

Paskaidrojumi kas notiek sesijas failos

master
Vitalijss 5 år sedan
förälder
incheckning
b647229754
2 ändrade filer med 11 tillägg och 3 borttagningar
  1. +4
    -3
      auth.php
  2. +7
    -0
      include/check_session.php

+ 4
- 3
auth.php Visa fil

@@ -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 Visa fil

@@ -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.
*/
?>

Laddar…
Avbryt
Spara

Powered by TurnKey Linux.