Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Skrypt logowania nie loguje użytkownika
Forum PHP.pl > Forum > Przedszkole
Pudi
Witam mam taki problem posiadam skrypt logowania który z niewiadomych przyczyn nie działa w pole logowania podaje hasło i login klikam zaloguj i przenosi mnie do pliku login.php który ma zalogować i przydzielić sesje itp, ale gdy klikam zaloguj przeniesie mnie do tego pliku ale wyświetla czystą stronę zero jakiegokolwiek info czy coś zero erorów i niewiem co jest źle w tym kodzie proszę o sprawdzenie i wytłumaczenie mi co jest źle z góry dziękuje

KOD pliku login.php
  1. <?php
  2.  
  3. $ciastko = $_COOKIE['twojastrona'];
  4.  
  5. if(isset($ciastko)){
  6.  
  7. require_once('config.php');
  8.  
  9. $query = "SELECT * FROM users WHERE haslo='$ciastko'";
  10. $result = mysql_query($query);
  11. $row = @mysql_fetch_assoc($result);
  12.  
  13. if($row){
  14.  
  15. $_SESSION['login'] = $row['login'];
  16. $_SESSION['haslo'] = $row['haslo'];
  17. $_SESSION['data'] = $row['data'];
  18. $_SESSION['id'] = $row['id'];
  19.  
  20. $info2 .= 'Zostałeś poprawnie <br>zalogowany na stronę<br />';
  21.  
  22. }
  23.  
  24. }
  25.  
  26. if ($_POST){
  27.  
  28. if(!empty($_POST["login"]) AND !empty($_POST["haslo"])){
  29.  
  30. require_once('config.php');
  31.  
  32. $login = czysc($_POST["login"]);
  33. $haslo = czysc($_POST["haslo"]);
  34.  
  35. $query = "SELECT * FROM users WHERE login='$login' AND haslo=md5('$haslo')";
  36. $result = mysql_query($query);
  37. $row = mysql_fetch_assoc($result);
  38.  
  39. if ($row){
  40.  
  41. $_SESSION['login'] = $row['login'];
  42. $_SESSION['haslo'] = $row['haslo'];
  43. $_SESSION['data'] = $row['data'];
  44. $_SESSION['id'] = $row['id'];
  45.  
  46. if(isset($_POST['zapamietaj'])){
  47.  
  48. setcookie('twojastrona',$_SESSION['haslo'],time()+31536300);
  49.  
  50. $info2 .='ustawiono ciastko<br />';
  51.  
  52. }
  53.  
  54.  
  55. $info2 = 'Zostałeś poprawnie <br>zalogowany na stronę<br />';
  56.  
  57. }else{
  58.  
  59. $info2 = 'Nieprawidłowy login lub hasło<br />';
  60.  
  61. }
  62.  
  63. }else{
  64.  
  65. $info2 = 'wpisz login i hasło<br />';
  66.  
  67. }
  68.  
  69. }
  70.  
  71. ?>


i jeszcze dam ten index.php
  1. <?php
  2.  
  3. $login = $_SESSION['login'];
  4. $email = $_SESSION['email'];
  5.  
  6. if(!empty($nazwa)){
  7.  
  8. echo ("<center><b>Witaj $login</b><br>$email");
  9. echo ('<br><a href="wyloguj.php"><b>[wyloguj]</b></a><br></center>');
  10.  
  11. }else{
  12.  
  13. echo ("<center><form action='login.php' method='post'>");
  14. echo ('<table><tr>
  15. <td><input type="textbox" name="login"></td>
  16. </tr><tr>
  17. <td><input type="password" name="haslo"></td>
  18. </tr><tr>
  19. <td><input type="checkbox" name="zapamietaj">zapamiętaj</td>
  20. </tr><tr>
  21. <td><input type="submit" value="zaloguj"></td>
  22. </tr><tr>
  23. <td><a href="register.php" target="_blank">zarejestruj się</a></td>
  24. </tr></table></form></center>');
  25.  
  26. }
  27.  
  28. ?>
  29.  
  30. <div align="center"><br><?php if(!empty($info2)) echo $info2; ?></div>

minolone
Sprawdz co się stanie jak wyrzucisz to:
  1. <div align="center"><br><?php if(!empty($info2)) echo $info2; ?></div>

z pliku index.php, a dodasz na końcu login.php.

Tak samo pobierasz w pliku index.php z sesji login i email i zapisujesz je do zmiennych, a sprawdzasz zmienną nazwa?

Przeglądnij sobie dokładnie swój skrypt i przeanalizuj z innymi, a na forum znajdziesz tego naprawde sporo, wystarczy że użyjesz wyszukiwarki i wpiszesz "logowanie".
Pozdrawiam.
tomekmvr
Ja w Twoim skrypcie w ogóle nie widzę żadnej funkcji odpowiedzialnej za wyświetlanie informacji zrób coś takiego w pliku login.php

  1. <?php
  2.  
  3. $ciastko = $_COOKIE['twojastrona'];
  4.  
  5. if(isset($ciastko)){
  6.  
  7. require_once('config.php');
  8.  
  9. $query = "SELECT * FROM users WHERE haslo='$ciastko'";
  10. $result = mysql_query($query);
  11. $row = @mysql_fetch_assoc($result);
  12.  
  13. if($row){
  14.  
  15. $_SESSION['login'] = $row['login'];
  16. $_SESSION['haslo'] = $row['haslo'];
  17. $_SESSION['data'] = $row['data'];
  18. $_SESSION['id'] = $row['id'];
  19.  
  20. $info2 .= 'Zostałeś poprawnie <br>zalogowany na stronę<br />';
  21.  
  22. }
  23.  
  24. }
  25.  
  26. if ($_POST){
  27.  
  28. if(!empty($_POST["login"]) AND !empty($_POST["haslo"])){
  29.  
  30. require_once('config.php');
  31.  
  32. $login = czysc($_POST["login"]);
  33. $haslo = czysc($_POST["haslo"]);
  34.  
  35. $query = "SELECT * FROM users WHERE login='$login' AND haslo=md5('$haslo')";
  36. $result = mysql_query($query);
  37. $row = mysql_fetch_assoc($result);
  38.  
  39. if ($row){
  40.  
  41. $_SESSION['login'] = $row['login'];
  42. $_SESSION['haslo'] = $row['haslo'];
  43. $_SESSION['data'] = $row['data'];
  44. $_SESSION['id'] = $row['id'];
  45.  
  46. if(isset($_POST['zapamietaj'])){
  47.  
  48. setcookie('twojastrona',$_SESSION['haslo'],time()+31536300);
  49.  
  50. $info2 .='ustawiono ciastko<br />';
  51.  
  52. }
  53.  
  54.  
  55. $info2 = 'Zostałeś poprawnie <br>zalogowany na stronę<br />';
  56.  
  57. }else{
  58.  
  59. $info2 = 'Nieprawidłowy login lub hasło<br />';
  60.  
  61. }
  62.  
  63. }else{
  64.  
  65. $info2 = 'wpisz login i hasło<br />';
  66.  
  67. }
  68.  
  69. }
  70. echo $info2;
  71. ?>


Teraz powinieneś dostać napewno jakąś a nie czystą stronęsmile.gif

Pozdrawiam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.