Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Logowanie
boosik01
post
Post #1





Grupa: Zarejestrowani
Postów: 91
Pomógł: 1
Dołączył: 19.08.2009

Ostrzeżenie: (10%)
X----


Witam! Próbuje zrobiź skrypt logowania, taki prosty byle był ; ))

O to on:

  1. <?php
  2.  
  3. include ('baza.php');
  4. if(isset($_POST['ok']) AND isset($_POST['user']) AND isset($_POST['haslo'])){
  5. $user = $_POST['user'];
  6. $haslo = md5($_POST['haslo']);
  7. $mysql = mysql_fetch_array(mysql_query("select `id` from `users` where `user` = '$user' AND `haslo` = '$haslo' limit 1"));
  8. if(isset($mysql['id'])){
  9. $_SESSION["user"] = $user;
  10. header("Location: main.php");
  11. }
  12. else {
  13. echo 'Wystąpił błąd podczas logowania!';
  14. }
  15. }
  16. else {
  17. ?>
  18. <form action='' method='POST'>
  19. Login: <input type='text' name='user'>
  20. Hasło: <input type='password' name='haslo'>
  21. <input type='submit' name='ok' value='Zaloguj'>
  22. </form><br><br>
  23. <a href="rejestracja.php">Rejestracja</a>
  24. <?php
  25. }
  26. ?>


Tyle że po nacisknięciu loguj strona tylko się odświeża. Hmm... może ktoś wie co tu jest nie tak że tylko strona się odświeża.
Go to the top of the page
+Quote Post
Fifi209
post
Post #2





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Zamiast AND w ifach daj &&
Go to the top of the page
+Quote Post
boosik01
post
Post #3





Grupa: Zarejestrowani
Postów: 91
Pomógł: 1
Dołączył: 19.08.2009

Ostrzeżenie: (10%)
X----


Nic nie daje ;((

Musze troche uściślić:

Po kliknięciu w loguj przechodzi mi tak jakby do main.php lecz nadal jest ten formularz logowania i nic więcej ;/;/
Go to the top of the page
+Quote Post
erix
post
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
Zamiast AND w ifach daj &&

...

  1. if(isset($mysql['id'])){

Sprawdź sobie, co masz w tej tablicy. Poza tym, skrypt podatny na SQLInjection.
Go to the top of the page
+Quote Post
boosik01
post
Post #5





Grupa: Zarejestrowani
Postów: 91
Pomógł: 1
Dołączył: 19.08.2009

Ostrzeżenie: (10%)
X----


No co mam w tej tablicy ? id ;p
Go to the top of the page
+Quote Post
drPayton
post
Post #6





Grupa: Zarejestrowani
Postów: 890
Pomógł: 65
Dołączył: 13.11.2005
Skąd: Olsztyn

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


A czy ten plik, którego kod wkleiłeś to właśnei ten main.php? Bo jeśli tak, to za wyjątkiem tego co napisał @erix działa poprawnie...
Go to the top of the page
+Quote Post
thek
post
Post #7





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Podłaczę się do wypowiedzi... Jeśli main.php i kod jaki nam pokazałeś to ten sam plik to nie ma się czemu dziwić (IMG:style_emoticons/default/smile.gif) Logujesz się i owszem, ale przekierowujesz na ten sam plik, więc pokaże on to, co powinien pokazać:) Wrzuć do location inny i sprawdź czy Cię na właściwy przekieruje. Poza tym do pól można wstawić co się chce. Jeśli więc wstawię tam spreparowane zapytanie do bazy to będzie jazda. Mogę też jako login podstawić sobie kod php lub html i też będziesz miał na stronie jazdę (IMG:style_emoticons/default/winksmiley.jpg) Zapoznaj się z tematami o bezpieczeństwie bo strona w necie Ci nie pożyje długo (IMG:style_emoticons/default/winksmiley.jpg)

@fifi: AND i && to jedno i to samo (IMG:style_emoticons/default/smile.gif) Po prostu inny zapis :]
Tak samo jak if(warunek) {instrukcja} else {instrukcja} jest równoważne (warunek) ? {instrukcja} : {instrukcja}
Tak przy okazji... Jest różnica w działaniu między & i && więc lepiej się nie pomylić (IMG:style_emoticons/default/winksmiley.jpg)

Mi się wydaje, że może baza zwracać false, a tego nie przewidujesz wcale, gdyż od razu mysql_query walisz do mysql_fetch co w takim wypadku sypać będzie błędem. A jeśli display error masz na false to widzisz pustą stronę.
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: 22.08.2025 - 15:01