Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Logowanie, sprawdzanie czy uzytkownik jest zalogowany
legerg
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 14.08.2006

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


Zrobilem system sprawdzania uzytkownika, tylko jak odświeżam strone to pokazuje ze uzytkownik jest zalogowany chociaz nie jest.
Oto kod
  1. <?php
  2. if (session_is_registered("user"))
  3. {
  4. echo "<center>Nie jestes zalogowany. prosze sie zalogowac</center>";
  5. wy_form_logo();
  6.  echo "<a href="admin.php">Lista uzytkownikow</a>";
  7. }
  8. else
  9. {
  10. $tab_user = wynik_db_do_tablicy($wynik);
  11. $user = $login;
  12. echo "<font size="4"><center>zalogowany jako: <b>" .$user."</b>, data twojej rejestracji to: <b>".$tab_user[0]['data']."</b><br></center></font>";
  13. echo "<a href="wyloguj.php">wyloguj</a>";
  14. }
  15.  
  16. ?>

i niewiem co z tym zrobic.



Zgory dzieki za odpowiedzi.

Ten post edytował legerg 15.08.2006, 11:10:09
Go to the top of the page
+Quote Post
kossa
post
Post #2





Grupa: Zarejestrowani
Postów: 1 165
Pomógł: 9
Dołączył: 9.04.2002
Skąd: Toruń

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


Rejestruj zmienną session_register("user"); i jeśli jest zalogowany to przypisuj jej jakąś wartość

  1. <?php
  2. $_SESSION['user']='zalogowany';
  3. ?>


i sprawdzając czy jest zalogowany czy nie to sprawdzaj czy

  1. <?php
  2. if ($_SESSION['user']=='zalogowany')
  3. {
  4. //strona dla zalgowanych
  5. }
  6. else
  7. {
  8. //zaloguj się
  9. }
  10. ?>


bo Ty tylko sprawdzasz czy zmienna istnieje a ona istnieje bo jej nie zniszczyłeś po wylogowaniu i dlatego Tobie nie działało - stąd ten błąd

Łukasz

edit - kod na szybko z ręki - spr.

Ten post edytował kossa 15.08.2006, 12:25:29


--------------------
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #3





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Cytat(kossa @ 15.08.2006, 11:24 ) *
Rejestruj zmienną session_register("user"); i jeśli jest zalogowany to przypisuj jej jakąś wartość


Nie musisz rejestrować zmiennej sesyjnej - to jest rozwiązanie odchodzące do lamusa. Po prostu tworzy się zmienne $_SESSION['zmienna'] i już. Pozdrawiam.

Pozdrawiam,


--------------------
To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness;
chaotic, confused, vulnerability, to inform yourself.
Think for yourself. Question authority.
Go to the top of the page
+Quote Post
kossa
post
Post #4





Grupa: Zarejestrowani
Postów: 1 165
Pomógł: 9
Dołączył: 9.04.2002
Skąd: Toruń

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


To prawda, ale skoro @legerg tak już napisał więc modyfikację jego rozwiązania razem z $_SESSION mu zaproponowałem :-)

Łukasz


--------------------
Go to the top of the page
+Quote Post
legerg
post
Post #5





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 14.08.2006

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


dzieki, ale jeszcze mam dwa pytania
1) jak zrobic wylogowywania.
2)mam uzytkownika np.kotlet i chce jak kotlet sie zaloguje to zeby wyswietlal sie link do panelu administracyjnego.


z gory dzieki za odpowiedzi cool.gif
Go to the top of the page
+Quote Post
kossa
post
Post #6





Grupa: Zarejestrowani
Postów: 1 165
Pomógł: 9
Dołączył: 9.04.2002
Skąd: Toruń

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


  1. <?php
  2. /*
  3. tu Twoj skrypt logowania gdzie user kotlet sie loguje i zmiennej 
  4. $_SESSION['user']='kotlet';
  5. przypisujesz wartość kotlet
  6. następnie
  7. */
  8.  
  9. if ($_SESSION['user']=='kotlet')
  10. {
  11. echo '<a href='admin.php'>linka do panelu admina</a>';
  12. }
  13. ?>


Lukasz


--------------------
Go to the top of the page
+Quote Post
legerg
post
Post #7





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 14.08.2006

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


dzieki, a wylogowywanie
Go to the top of the page
+Quote Post
SHiP
post
Post #8





Grupa: Zarejestrowani
Postów: 697
Pomógł: 47
Dołączył: 19.12.2003
Skąd: Lublin

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


  1. <?php
  2. unset($_SESSION['user']);
  3. ?>


powinno dzialac ;]


--------------------
Warsztat: Kubuntu, PhpStorm, Opera
Go to the top of the page
+Quote Post
Balon
post
Post #9





Grupa: Zarejestrowani
Postów: 422
Pomógł: 0
Dołączył: 14.12.2005
Skąd: Wałbrzych

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


raczej
  1. <?php
  2. /*
  3. tu Twoj skrypt logowania gdzie user kotlet sie loguje i zmiennej 
  4. $_SESSION['user']='kotlet';
  5. przypisujesz wartość kotlet
  6. następnie
  7. */
  8.  
  9. if ($_SESSION['user']=='kotlet')
  10. {
  11. echo '<a href="admin.php">linka do panelu admina</a>';
  12. }
  13. ?>


nie ucz głupot początkujacych

poza tym session_destroy" title="Zobacz w manualu php" target="_manual jesscze powinno byc exclamation.gif!!

Ten post edytował Balon 15.08.2006, 17:25:16


--------------------
Postura wielka i morda wredna, jestem Balon, kozak z osiedla !
bzdury.pl - Królestwo rozrywki
Go to the top of the page
+Quote Post
legerg
post
Post #10





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 14.08.2006

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


dzieki, a da sie poprzez link.
Go to the top of the page
+Quote Post
LamaMASTER
post
Post #11





Grupa: Zarejestrowani
Postów: 160
Pomógł: 0
Dołączył: 27.03.2006

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


Robisz system logowania, a to są podstawy php. Najpierw naucz się robić podstrony, potem poprzez link zrób wylogowywanie. Nie zadawaj takich pytań smile.gif
A poza tym te rozwiązanie jest niebezpieczne smile.gif
Go to the top of the page
+Quote Post
kossa
post
Post #12





Grupa: Zarejestrowani
Postów: 1 165
Pomógł: 9
Dołączył: 9.04.2002
Skąd: Toruń

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


Cytat(Balon @ 15.08.2006, 18:22 ) *
raczej
  1. <?php
  2. /*
  3. tu Twoj skrypt logowania gdzie user kotlet sie loguje i zmiennej 
  4. $_SESSION['user']='kotlet';
  5. przypisujesz wartość kotlet
  6. następnie
  7. */
  8.  
  9. if ($_SESSION['user']=='kotlet')
  10. {
  11. echo '<a href="admin.php">linka do panelu admina</a>';
  12. }
  13. ?>


nie ucz głupot początkujacych


@Balon, co masz na myśli?
co było nie tak w moim kodzie?

Łukasz

Cytat(LamaMASTER @ 15.08.2006, 19:28 ) *
Robisz system logowania, a to są podstawy php. Najpierw naucz się robić podstrony, potem poprzez link zrób wylogowywanie. Nie zadawaj takich pytań smile.gif
A poza tym te rozwiązanie jest niebezpieczne smile.gif



@LamaMASTER, możesz zaproponowac bezpieczniejsze rozwiązania? Osobiście chętnie się czegoś nowego nauczę, wiedzy nigdy nie za wiele.

Łukasz


--------------------
Go to the top of the page
+Quote Post
Kayne
post
Post #13





Grupa: Zarejestrowani
Postów: 82
Pomógł: 0
Dołączył: 30.04.2006
Skąd: Kalisz

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


Cytat(kossa @ 15.08.2006, 13:41 ) *
  1. <?php
  2. echo '<a href='admin.php'>linka do panelu admina</a>';
  3. ?>


Przy admin.php masz ' zamiast " co generuje błąd, bo interpreter php "myśli", że przy href=' kończy się funkcja echo().


--------------------
Chcesz szybko i łatwo wygrać 100 zł?
Go to the top of the page
+Quote Post
kossa
post
Post #14





Grupa: Zarejestrowani
Postów: 1 165
Pomógł: 9
Dołączył: 9.04.2002
Skąd: Toruń

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


  1. <?php
  2. echo "<a href='admin.php'>linka do panelu admina</a>";
  3. ?>


oczywiście, tylko nie lubię ukośników które czasmi tu na forum system dodaje i napisałem apostrofy

Łukasz

Ten post edytował kossa 17.08.2006, 12:55:34


--------------------
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 Aktualny czas: 19.08.2025 - 21:46