Pagina 1 din 1
acces in pagina doar la user logat
Scris: Joi Oct 27, 2016
de sterica
Salutare,
Am o pagina de login.php unde introduc user, parola si am un buton de submit, daca este introdus corect, imi face trimitere cu:
daca nu sunt corecte datele primesc un mesaj de eroare. Problema mea apare catunci cand in browser este tastat localhost/site/index.php se deschide in continuare pagina, teoretic partea de login o am asa doar de dragul de a fi. Ce pot face ca sa nu imi deschida pagina daca nu am introdus user si parola.
Multumesc!
acces in pagina doar la user logat
Scris: Joi Oct 27, 2016
de MarPlo
Salut
1. In "login.php" inregistrezi un $_SESSION daca datele de logare sunt trimise si corecte, altfel stergi acea sesiune.
Cod: Selectaţi tot
if($date_logare_corecte){
$_SESSION['loged'] ='Name';
}
else if(isset($_SESSION['loged'])) unset($_SESSION['loged']);
2. In paginile cu acces doar cu logare verifici daca exista acea sesiune.
Cod: Selectaţi tot
if(isset($_SESSION['loged'])){
echo 'Content..';
}
else echo 'You must logg in.';
- In toate acele fisiere sa fie la inceput: session_start().
acces in pagina doar la user logat
Scris: Joi Oct 27, 2016
de sterica
MarPlo, cum imi recomanzi sa procedez in cazului lui acel echo 'Content..' ; atunci cand pagina este formata din foarte multe linii de cod HTML. Va trebui sa o transpun sa fie interpretata de php prin acel echo, sau am o alta posibilitate mult mai usoara?
Multumesc!
acces in pagina doar la user logat
Scris: Joi Oct 27, 2016
de MarPlo
O varianta mai simpla in cazul acelui "echo" cu continutul paginii e aceasta:
Cod: Selectaţi tot
if(isset($_SESSION['loged'])){
include 'get_content.php';
}
else echo 'You must logg in.';
Iar in "get_content.php" definesti continutul cum stii.
- Ca sa nu se poata accesa din browser fisierul get_content.php, adaugi in fisieru ".htaccess" acest cod:
Cod: Selectaţi tot
# Blocks the external access to get_content.php
<files get_content.php>
order allow,deny
deny from all
</files>
acces in pagina doar la user logat
Scris: Joi Oct 27, 2016
de sterica
M-am gandit si la a include o pagina in acel if, insa asa cum ai spus si tu se poate accesa din browser, dar .htaccess se pare ca face minuni
Voi folosi pentru fiecare fisier codul tau:
Cod: Selectaţi tot
<files get_content.php>
order allow,deny
deny from all
</files>
Multumesc mult de ajutor!
acces in pagina doar la user logat
Scris: Mar Noi 14, 2017
de cadou
Si daca as avea un fisier intr-un folder... de exemplu calea fisierului (daca as tasta in browser) .....ro/Dosar/Fisier.php , iar fisier.php nu as dori sa il acceseze cineva direct din browser,
Am incercat sa pun in htaccess asa :
Cod: Selectaţi tot
<files folder/fisier.php>
order allow,deny
deny from all
</files>
, dar nu a mers, se putea accesa din browser, apoi daca am pus asa :
Cod: Selectaţi tot
<files fisier.php>
order allow,deny
deny from all
</files>
Nu se putea accesa din browser, dar nici din alta parte dintr-un form prin ajax ...
acces in pagina doar la user logat
Scris: Mar Noi 14, 2017
de MarPlo
Nu mai merge sa accesezi din browser, ajax sau alt mod extern un fisier blocat cu .htacces.
Se poate accesa doar dintr-un script de pe server, de exemplu cu include() in alt fisier .php.
acces in pagina doar la user logat
Scris: Mar Noi 14, 2017
de cadou
Pai si pentru fisiere care nu ar trebui accesate extern/din browser, sa inteleg ca trebuie sa punem cumva conditii sa nu fie accesate direct din adress bar .... deci asta cu regula in htaccess cam pica ....
Re: acces in pagina doar la user logat
Scris: Sâm Feb 03, 2018
de Stefan
cadou scrie: ↑Mar Noi 14, 2017
Pai si pentru fisiere care nu ar trebui accesate extern/din browser, sa inteleg ca trebuie sa punem cumva conditii sa nu fie accesate direct din adress bar .... deci asta cu regula in htaccess cam pica ....
interzicere-accesare-directa-fisiere-t2611.htm , vezi acest topic