Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [cookie]
Raffal
post
Post #1





Grupa: Zarejestrowani
Postów: 111
Pomógł: 0
Dołączył: 19.06.2006

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


problem jest pewnie dosyc prosty , doszedlem do tematu cookie w mojej ksiazce(Radocha z Programowania calkiem niezle przyklady i tania!! ) no i stanalem w miejscu prubuje zrobic sobie skrypt odpowiedzialny za logowanie lecz mam problem nie moge pobrac plikow cookie od uzytkownika

  1. <form action="" method="Post">
  2. login<input type="text" name="login" value="" size=""><br>
  3. haslo<input type="password" name="haslo" value="" size="">
  4. <input type="submit" value="Wyślij">
  5. </form>
  6.  
  7. <?
  8. $logine=='';
  9. $hasloo=='';
  10. if($login==$logine && $haslo==$hasloo)
  11. {
  12. setcookie("logowanie", "logowanie", time()+3600);
  13. echo 'cookie ustawione';
  14. }
  15. else
  16. {
  17. echo 'Niepoprawne hasło lub uzytkownik';
  18. }
  19. ?>
  20.  
  21. <?
  22. if (isset($_COOKIE['logowanie']))
  23. {
  24. echo $_COOKIE['logowanie'];
  25. }
  26. ?>


cookie sie zapisuja(sprawdzalem) lecz chce odczytac je no i nic nic sie nie wyswietla:( mozecie wskazac mi blad (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) i naprowadzic na wlasciwa droge? (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
batman
post
Post #2





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Jeśli kod masz napisany w taki sposób jak w przykładzie, to nic dziwnego, że nie działa. Funkcja setcookie może byc wywołana przed wysłaniem nagłówków. Przenieś cały kod php nad formularz i zadziała (o ile nie masz nic nad formularzem).
Go to the top of the page
+Quote Post
Raffal
post
Post #3





Grupa: Zarejestrowani
Postów: 111
Pomógł: 0
Dołączył: 19.06.2006

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


dzieki (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) no jasne przecierz to teraz ma sens wczesniej nadpisywalo no dzieki:)

chcialem sie jeszce zapytac co myslicie o tym jest to skrypt logowania tzn sprawdza czy jes t ciasteczko jak jest wyswietla cos(narazie jest include) jak nie ma to prosi zalogowanie

skrypt wyglada tak
  1. <?
  2. if(isset($_COOKIE['logowanie']))
  3. {
  4. echo 'Witaj '.$login. 'jestes zalogowany';
  5. @include('panel.txt');
  6. }
  7. else
  8. {
  9. if($login==login && $haslo==haslo)
  10. {
  11. setcookie("logowanie", "zalogowanty", time()+3600);
  12. echo 'cookie ustawione';
  13. echo 'zachwile zostaniesz przekierwowany do panelu administracyjnego';
  14. for($i=1;$i<10000;$i++)
  15. {
  16. }
  17. echo 'zachwile zostaniesz przekierwowany do panelu administracyjnego';
  18. header('location: logowanie.php');
  19. }
  20. else
  21. {
  22. echo 'Niepoprawne hasło lub uzytkownik';
  23. }
  24. }
  25. ?>
  26.  
  27.  
  28. <form action="" method="Post">
  29. login<input type="text" name="login" value="" size=""><br>
  30. haslo<input type="password" name="haslo" value="" size=""><br>
  31. <input type="submit" value="zaloguj"><br>
  32. <button action=php/wyloguj.php>Wyloguj !!</button><br>
  33. </form>

a to do wyloguj
  1. <?
  2. setcookie("logowanie","",time()-3600);
  3. header('location: logowanie.php');
  4. echo 'wylogowales się !!';
  5. ?>

a wyloguj mi nie dziala chcialem w sumie zrobic panel opart na jednym pliku mozecie mi pomoc tzn ocenic wskazac bledy lub lepsze rozwiazania ?
Go to the top of the page
+Quote Post
batman
post
Post #4





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Największym błędem tego rozwiązania jest to, iż każdy może uzyskać dostęp do strony poprzez prostą podmianę ciasteczka. Opieranie się tylko na ciasteczkach w krypcie logowania to nie jest najlepszy pomysł. Dorzuć do tego bazę danych (ewentualnie pliki tekstowe) i będzie znacznie bezpieczniej.
Go to the top of the page
+Quote Post
Raffal
post
Post #5





Grupa: Zarejestrowani
Postów: 111
Pomógł: 0
Dołączył: 19.06.2006

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


a mozesz mi odpowiedziec dlaczego wyloguj nie dziala?
a oparcie tego na plikach txt czyli pliki txt na serweze o nazwie z loginem i w pliku naprzyklad zakodowane haslo?
Go to the top of the page
+Quote Post
mdco
post
Post #6





Grupa: Zarejestrowani
Postów: 324
Pomógł: 5
Dołączył: 14.12.2004

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


W wylogowaniu uzyłeś po header polecenie echo. To albo echo albo header, prawdopodonie masz bład typu: headers already sent by...

Na przyszlosc pisz jakie bledy polzuje Ci. Wtedy bedzie latwiej cos poradzic.

Ja osobiscie preferuje logowanie na sesjach, jest najbezpieczniejsze.

Ten post edytował mdco 18.11.2006, 16:12:11
Go to the top of the page
+Quote Post
Raffal
post
Post #7





Grupa: Zarejestrowani
Postów: 111
Pomógł: 0
Dołączył: 19.06.2006

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


nie wyswietla sie zaden blad ,a co do sesji do zdaje sobie z tego sprawe ze jest bezpieczniejsze lecz chce sie nauczyc cookie a najlepiej uczy sie na przykladach i cwiczac

a i orietujecie moze sie jak zmienic kursor na calym serwisie tzn w css ?

Ten post edytował Raffal 18.11.2006, 16:18:08
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 24.08.2025 - 11:43