Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Zapisanie obecnej wartosci zmiennej w stalej?
fate
post 18.04.2012, 14:32:15
Post #1





Grupa: Zarejestrowani
Postów: 824
Pomógł: 106
Dołączył: 14.03.2012
Skąd: Warszawa

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


Problem w tym ze Http_Referer po wyknoninu polecen zmienia wartosc a ja chce przekierować na wartosc wczesniejsza, jak to zrobic? probowalem zapisac ta wartosc jakos do stałej ale brakuje mi skilla zeby to potem odpalic.
  1. <?
  2. // sesja
  3.  
  4. function url()
  5. {
  6. return $_SERVER['HTTP_REFERER'];
  7. }
  8. define("url", $_SERVER['HTTP_REFERER']);
  9. echo url;
  10. // Jak prezerobic zeby obecna wartosc zmiennej
  11.  
  12.  
  13. if (isset($_POST['konto']) and isset($_POST['password']) )
  14. {
  15. require('conn.php');
  16. $konto=mysql_real_escape_string(trim($_POST['konto']));
  17. $password=mysql_real_escape_string(trim($_POST['password']));
  18. if ($konto!="" and $password!="")
  19. {
  20. $password = sha1($password);
  21. $zapytanie="SELECT id FROM user WHERE login='$konto' and password ='$password'";
  22. $temp=mysql_query($zapytanie) or die("Wystąpił błąd");
  23. $ile=mysql_num_rows($temp);
  24. $temp=mysql_fetch_array($temp);
  25. $id=$temp['id'];
  26. if ($ile==1)
  27. {
  28. $_SESSION['user_id']=$id;
  29. $_SESSION['login']=$konto;
  30. echo ('Zalogowano. Przekierowuję...');
  31. // Zostala przekazana tutaj czyli zeby nie przekierowac na nowy REFERER
  32. echo url;
  33. header ('Refresh: 1; URL='.$url);
  34. }
  35. else
  36. echo ('Nieprawidłowe dane. Przekierowuję...');
  37. header ('Refresh: 1; URL="log.php"');
  38. }
  39. }
  40. else
  41. {}
  42. ?>
  43.  
  44. <? ob_end_flush(); ?>
  45.  
  46.  


Chyba da sie i nie trudno, pomoże ktoś? Lkingsmiley.png


--------------------
Go to the top of the page
+Quote Post
Swirek
post 18.04.2012, 14:53:35
Post #2





Grupa: Zarejestrowani
Postów: 221
Pomógł: 20
Dołączył: 4.05.2006
Skąd: Polska

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


możesz sobie to tymczasowo zapisać w pliku, bazie lub inaczej i później odczytać.
możesz przekazać ją postem lub za pomocą get
lub może sprawę załatwi zmienna $_SERVER['HTTP_X_FORWARDED_FOR'] smile.gif


--------------------
Macho odpadacie ;) .
Go to the top of the page
+Quote Post
rocktech.pl
post 18.04.2012, 15:24:35
Post #3





Grupa: Zarejestrowani
Postów: 587
Pomógł: 131
Dołączył: 8.02.2010

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


Witam.

Daj w 13 linii.
  1. isset($_SESSION['url']) ? false : $_SESSION['url'] = url ( ) ;


A w 34 linii.

  1. header ('Refresh: 1; URL='.$_SESSION['url']);


Ten post edytował rocktech.pl 18.04.2012, 15:28:11


--------------------
Despite the tons of examples and docs, mod_rewrite is voodoo. Damned cool voodoo, but still voodoo. --Brian Moore

I never go looking for a sucker. I look for a Champion and make a sucker of of him. --Amarillo Slim


Home-made : js-gui-classes | Accordion | Tabs | Carousel / php-sms-classes | Obsługa bramki SMS MultiInfo | Obsługa bramki SMS Mobiltek
Go to the top of the page
+Quote Post
fate
post 18.04.2012, 15:29:30
Post #4





Grupa: Zarejestrowani
Postów: 824
Pomógł: 106
Dołączył: 14.03.2012
Skąd: Warszawa

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


rocktech.pl
nie zauważyłem efektu
Swirek
pomysle o tym zapisywaniu w pliku. co do get to mi to includuje strony i nie chce na tym etapie laczyc kolejnych zmiennych w adresie bo chyba tylko tak sie da
$_SERVER['HTTP_X_FORWARDED_FOR'] moze by zalatwilo sprawe tylko osoba ktora z niewiadomych przyczyn odswiezyla by strone przy logowaniu chyba juz nie wroci? zreszta sprawdze

Dzieki wam za odp.

Ten post edytował fate 18.04.2012, 15:34:43


--------------------
Go to the top of the page
+Quote Post
mortus
post 18.04.2012, 15:30:49
Post #5





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

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


Stała to nazwa dla pewnej wartości, która nie może ulec zmianie podczas jednokrotnego działania skryptu. Odświeżenie strony powoduje przerwanie (kończy działanie) i ponowne uruchomienie skryptu. Zapisz HTTP_REFERER w sesji ($_SESSION) i nie będzie problemu z odświeżaniem po błędzie. Przed dokonaniem przekierowania usuń HTTP_REFERER z sesji.
Go to the top of the page
+Quote Post
fate
post 18.04.2012, 19:41:34
Post #6





Grupa: Zarejestrowani
Postów: 824
Pomógł: 106
Dołączył: 14.03.2012
Skąd: Warszawa

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


mogłby mi to kto przeskrobać bo próbowałem i wróciłem do punktu wyjścia dodac do sesji chyba dodalem ale nie wiem jak usunac... thumbsdownsmileyanim.gif


--------------------
Go to the top of the page
+Quote Post
mortus
post 18.04.2012, 20:20:37
Post #7





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

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


  1. <?php
  2. $_SESSION['referer'] = isset($_SERVER['HTTP_REFERER']) && $_SERVER['HTTP_REFERER'] != '' ? $_SERVER['HTTP_REFERER'] : 'index.php';
  3. // ...
  4. // a po poprawnym zalogowaniu
  5. $_SESSION['user_id'] = $id;
  6. $_SESSION['login'] = $konto;
  7. echo ('Zalogowano. Przekierowuję...');
  8. $url = $_SESSION['referer'];
  9. unset($_SESSION['referer']);
  10. header('Location: ' . $url);
  11. exit(); // funkcja obowiązkowa podczas przekierowywania, bo zapobiega wykonywaniu dalszego kodu PHP
  12. // ...
Go to the top of the page
+Quote Post
fate
post 19.04.2012, 19:33:18
Post #8





Grupa: Zarejestrowani
Postów: 824
Pomógł: 106
Dołączył: 14.03.2012
Skąd: Warszawa

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


Dzieki narazie nie działa ale pokminie jeszcze z tym co dałeś coś ruszyło.
Jak dam exit to potym
// ...
juz kodu nie moge ciagnac i tu jest ból ale do zrobienia myśle jest:)
+ arrowheadsmiley.png


--------------------
Go to the top of the page
+Quote Post

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 Wersja Lo-Fi Aktualny czas: 5.07.2025 - 23:28