Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php & smarty] skrypt logowania - problem, nie loguje użytkownika
Fipaj
post 12.05.2005, 13:24:00
Post #1





Grupa: Zarejestrowani
Postów: 691
Pomógł: 0
Dołączył: 19.01.2005
Skąd: Warszawa

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


  1. <?php
  2.  
  3. require ('../../smarty/Smarty-2.6.9/libs/Smarty.class.php');
  4. require ('../inne/opcje.php'); // hasło
  5.  
  6. $smarty = new Smarty;
  7.  
  8. $smarty -> template_dir = '../inne';
  9. $smarty -> compile_dir = '../inne/kopie';
  10.  
  11. $smarty -> assign ('TYTUL', 'Indeks administracji');
  12. $smarty -> assign ('SLOWA_KLUCZOWE', '');
  13. $smarty -> assign ('OPIS', '');
  14. $smarty -> assign ('PREFIKS_URI', '../');
  15. $smarty -> assign ('SZABLON', 'szablony/admin_index.tpl');
  16.  
  17. if ($_GET['akcja'] == 'wyloguj') {
  18. if (isset ($_COOKIE['zalogowany'])) {
  19. unset ($_COOKIE['zalogowany']);
  20. $smarty -> assign ('NAZWA', 'wylogowany');
  21. $smarty -> assign ('LINKI', array ('../index.php' => 'Powrót do bloga'));
  22. }
  23. }
  24. else {
  25. if (isset ($_POST['zaloguj'])) {
  26. if ($_POST['haslo'] == $haslo) {
  27. setcookie ('zalogowany', 'TRue');
  28. }
  29. else {
  30. $smarty -> assign ('NAZWA', 'zle_haslo');
  31. }
  32. }
  33. if (isset ($_COOKIE['zalogowany'])) {
  34. $smarty -> assign ('NAZWA', 'zalogowany');
  35. $smarty -> assign ('LINKI', array ('../index.php' => 'Powrót do bloga', 'index.php?akcja=wyloguj' => 'Wyloguj'));
  36. }
  37. else {
  38. $smarty -> assign ('NAZWA', 'formularz');
  39. $smarty -> assign ('LINKI', array ('../index.php' => 'Powrót do bloga'));
  40. }
  41. }
  42.  
  43. $smarty -> assign ('TYTUL_STRONY', 'Indeks administracji');
  44.  
  45. $smarty -> display('szablon.tpl');
  46.  
  47. ?>


Heh smile.gif

Oto formularz podszablon który includuję w smarty pod zmienną NAZWA

  1. {if $NAZWA == "wylogowany"}
  2. <p>Zostałeś wylogowany.</p>
  3. {elseif $NAZWA == "zalogowany"}
  4. <p>Jesteś zalogowany.</p>
  5. {elseif $NAZWA == "zle_haslo"}
  6. <p>Złe hasło!</p>
  7. {else}
  8. <form method="post" action="index.php">
  9. Hasło: <input type="password" name="haslo" />
  10. <input type="submit" name="zaloguj" value="Zaloguj!" />
  11. </form>
  12. {/if}


No więc po wpisaniu hasła jeszcze raz pokazuje formularz - nic się nie dzieje smile.gif
Sprawdziłem czy ustawił cookie o nazwie zalogowany - NIE!

Za każdym razem pokazuje formularz logowania. Hmmmmm smile.gif

Dzięki za pomoc smile.gif

Ten post edytował Fipaj 12.05.2005, 13:52:12


--------------------
Go to the top of the page
+Quote Post
eS...
post 12.05.2005, 14:37:11
Post #2





Grupa: Zarejestrowani
Postów: 367
Pomógł: 2
Dołączył: 4.03.2003
Skąd: C:/Windows/Temp

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


Jesli chodzi o $_COOKIE to moze poczytaj
http://smarty.php.net/manual/en/language.v...bles.smarty.php
peace


--------------------
Go to the top of the page
+Quote Post
Fipaj
post 13.05.2005, 13:38:55
Post #3





Grupa: Zarejestrowani
Postów: 691
Pomógł: 0
Dołączył: 19.01.2005
Skąd: Warszawa

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


Przeczytałem - można uprościć ten skrypt stosując $smarty.cookies.nazwa, ale to nie rozwiązuje problemu - tak czy siak, ze $smarty.cookies.. czy $_COOKIE ten skrypt nie ma prawa nie działać!!!

Ten post edytował Fipaj 13.05.2005, 13:40:40


--------------------
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: 22.06.2025 - 04:34