Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Gdzie robię błąd - logowanie sesja
Turson
post
Post #1





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


Form
  1. <?PHP
  2. echo '<div class="newsinfo">
  3. <span class="title">Logowanie</span></div>';
  4. if(($_SESSION["zalogowany"])==0){
  5. echo "<table><form action=index.php?id=login2 method=post>";
  6. echo "<tr><td>Login:</td> <td><input type=text maxlength=15 name=login class=in></td></tr><br>";
  7. echo "<tr><td>Hasło:</td> <td><input type=password name=haslo maxlength=15 class=in></td></tr><br>";
  8. echo "<input type=hidden value=1 name=send><br></table><br>";
  9. echo "<input type=submit value='Zaloguj się' class=button>";}
  10. else echo "Jesteś zalogowany!";
  11. ?>

Logowanie
  1. <?PHP
  2. if($_POST["send"]==1){
  3. if(!empty($_POST["login"]) && !empty($_POST["haslo"])){
  4. if(mysql_num_rows(mysql_query("select * from users where user_login = '".htmlspecialchars($_POST["login"])."' AND user_haslo = '".htmlspecialchars(md5($_POST["haslo"]))."'"))){
  5. echo 'Zalogowano poprawnie jako '.$_POST["login"].'. <a href=index.php>Przejdz na strone główna</a>';}
  6.  
  7. $_SESSION["zalogowany"]=true;
  8. $haslo = @mysql_query("SELECT user_id FROM users WHERE user_id='$_POST[login]'");
  9. while ($wiersz2 = mysql_fetch_array($haslo)) {
  10. $_SESSION["id"] = $wiersz2[0]; }
  11.  
  12. }
  13. else echo ("Podano złe dane!!!");
  14. }
  15. else echo "Pole loginu i hasła nie zostało uzupełnione.";
  16. }
  17. else{
  18. $haslo = @mysql_query("SELECT admin FROM users WHERE user_id='$_POST[login]'");
  19. while ($wiersz = mysql_fetch_array($haslo)) {
  20. if($wiersz[0] == 1) {
  21. $_SESSION["admin"]=1; }}
  22. ?>


Komunikaty nie są wyświetlane tak jak powinny
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Turson
post
Post #2





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


Dalej nic, pokażę kod logowania.
  1. <?PHP
  2. function ShowLogin($komunikat=""){
  3. echo "<table><form action=index.php?id=login2 method=post>";
  4. echo '<tr><td>Login:</td> <td><input type=text maxlength=15 name=login class=in value='.$_POST[login].'></td></tr><br>';
  5. echo '<tr><td>Hasło:</td> <td><input type=password name=haslo maxlength=15 class=in value='.$_POST[haslo].'></td></tr><br>';
  6. echo "<input type=hidden value=1 name=send><br></table><br>";
  7. echo "<input type=submit value='Zaloguj się' class=button>";
  8. echo '<br><a href="index.php?id=recovery_pass">Zapomniałem hasła</a>';
  9. }
  10.  
  11.  
  12. if($_POST["send"]==1)
  13. {
  14.  
  15. if(!empty($_POST["login"]) && !empty($_POST["haslo"]))
  16. {
  17. if(mysql_num_rows(mysql_query("select * from users where user_login = '".htmlspecialchars($_POST["login"])."' AND user_haslo = '".htmlspecialchars(md5($_POST["haslo"]))."'"))==1)
  18. {
  19. echo 'Zalogowano poprawnie jako '.$_POST["login"].'. <a href=index.php>Przejdz na strone główna</a>';
  20.  
  21.  
  22. $_SESSION["zalogowany"]=true;
  23. $haslo = mysql_query("SELECT admin FROM users WHERE user_login='".$_POST['login']."'");
  24. while ($wiersz = mysql_fetch_array($haslo)) {
  25. if($wiersz[0] == 1) {
  26. $_SESSION["admin"]=1; }}
  27. $haslo = mysql_query("SELECT user_id FROM users WHERE user_login='".$_POST['login']."'");
  28. while ($wiersz2 = mysql_fetch_array($haslo)) {
  29. $_SESSION["id"] = $wiersz2[0];
  30. }
  31.  
  32. }
  33.  
  34. else {
  35. echo "Podano złe dane.Popraw je, a następnie spróbuj zalogować się ponownie.";
  36. ShowLogin();
  37. }
  38. }
  39.  
  40. else
  41. { echo "Jedno z pól nie zostało uzupełnione.Spróbuj ponownie.";ShowLogin();; }
  42.  
  43. }
  44. ?>
  45.  
Go to the top of the page
+Quote Post

Posty w temacie
- TursoN   [PHP] Gdzie robię błąd - logowanie sesja   5.04.2011, 20:24:01
- - krzywy36   w czym problem...? Na szybko, usuń @ z komend mysq...   5.04.2011, 20:29:03
- - TursoN   Ogólnie mam pomieszany kod i wywala syntax, unexpe...   5.04.2011, 20:32:50
- - fifi209   Ogólnie forum to nie parser.   5.04.2011, 20:33:28
- - TursoN   Wiem, wrzuciłem zły kod z syntaxem. Poprawię na te...   5.04.2011, 20:34:34
- - lukaskolista   [PHP] pobierz, plaintext if(mysql_num_rows...[...   5.04.2011, 20:49:38
- - TursoN   A poza tym? Wydaje mi się, że nieprawidłowa kolejn...   6.04.2011, 13:15:50
- - kadlub   [PHP] pobierz, plaintext <?PHP if($_POST...   6.04.2011, 14:34:32
- - TursoN   Chyba problem jeszcze polega na haśle. W rejestrac...   6.04.2011, 14:39:53
- - kadlub   no dobrze kodujesz md5 i odczytujesz podając md5 a...   6.04.2011, 14:44:36
- - TursoN   `user_haslo` VARCHAR( 30 )   6.04.2011, 14:46:16
- - kadlub   to zmień te 30 na 200 bo ci sie cały ten krzaczek ...   6.04.2011, 14:49:47
- - TursoN   Zmieniłem długośc pola do 200, zrobiłem nowe konto...   6.04.2011, 14:58:10
- - kadlub   a w rejestracji tam gdzie zakładasz konto daj to ...   6.04.2011, 15:17:11
- - TursoN   Dalej nic, pokażę kod logowania. [PHP] pobierz, pl...   6.04.2011, 15:22:26
- - darko   Poprawiłem formatowanie: [PHP] pobierz, plaintext ...   6.04.2011, 15:31:17
- - TursoN   Dalej nie działa. Chyba klamerki funkcji są nie ta...   6.04.2011, 15:57:34
- - darko   Podpowiem jeszcze bardziej: gdzie zamykasz formula...   6.04.2011, 16:06:17
- - kadlub   [PHP] pobierz, plaintext function ShowLogin(...   6.04.2011, 16:06:58
- - TursoN   Komunikaty o błędnym haśle lub brakującym polu dzi...   6.04.2011, 16:14:29
- - kadlub   to według mię błąd leży po stronie rejestracji al...   6.04.2011, 16:26:45
- - TursoN   Zrobiłem konto test/test W bazie - ok Loguję się ...   6.04.2011, 17:13:49
- - darko   I wszystko jasne. W bazie masz ustawione varchar(3...   6.04.2011, 18:26:18
- - kadlub   Cytat(darko @ 6.04.2011, 19:26:18 ) I...   6.04.2011, 18:34:31
- - greycoffey   Btw. Nie varchar(32), nie varchar(30) a char(30) -...   6.04.2011, 18:43:31
- - TursoN   Poradziłem sobie tym skryptem, może komuś się przy...   6.04.2011, 20:32:58


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: 11.10.2025 - 15:55