Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Bezpieczne przekierowanie po zalogowaniu
Laran
post
Post #1





Grupa: Zarejestrowani
Postów: 25
Pomógł: 1
Dołączył: 20.03.2013

Ostrzeżenie: (0%)
-----


Hej.

Po zalogowaniu użytkownika chce go bezpiecznie przekierować na poprzednią stronę . Poprzez "bezpiecznie" mam na myśli że będzie to przekierowanie odporne na "majsterkowanie" innych i użytkownik zostanie przekierowany na poprzednią stronę (lub w najgorszym przypadku [jeśli ktoś zacznie "majsterkować"] użytkownik zostanie przekierowany na inną stronę, ale nadal w mojej domenie). Napisałem coś takiego:

W formularzu znajduje się to:
  1. <input type="hidden" name="location" value="<?php echo $_SERVER['HTTP_REFERER']?>" />


A kod przekierowania to:
  1. if($login) {
  2. if($_GET['location']) {
  3. $url = escape(trim($_GET['location']));
  4. $res = parse_url($url);
  5.  
  6. if($res['scheme'] === 'http' && $res['host'] === 'mojastrona.pl') {
  7. header('Location: '.$url);
  8. exit();
  9. } else {
  10. header('Location: index.php');
  11. exit();
  12. }
  13. } else {
  14. header('Location: index.php');
  15. exit();
  16. }
  17. }


Funkcja escape() to:
  1. function escape($string) {
  2. return htmlentities($string, ENT_QUOTES, 'UTF-8');
  3. }


Czy to jest bezpieczne? Zapomniałem o czymś? smile.gif

Ten post edytował Laran 14.06.2014, 10:49:46
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 13:02