Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]PHP + MySQL, nie działa logowanie ? ;/
Forum PHP.pl > Forum > Przedszkole
gizmo1985
Witam
Otóż mam problem z którym nie mogę sobie dać rady ....
Tworzę sobie portal na zaliczenie...
Posklejałem sobie system logowania na moje potrzeby, ale niestety nie działa :/

Nie przyjmuje mi logowania użytkownika...

Za każdym razem wyświetla mi to, co ma się stać po else....czyli prośbę o ponowne podanie hasła :/
  1. <?php
  2. include "conn.inc.php";
  3.  
  4. if (isset($_POST['submit'])) {
  5. $query = "SELECT login, haslo FROM osoba " .
  6. "WHERE login = '" . $_POST['login'] . "' " .
  7. "AND haslo = (PASSWORD('" . $_POST['haslo'] . "'))";
  8. $result = mysql_query($query)
  9.  
  10. if (mysql_num_rows($result) == 1) {
  11. $_SESSION['user_logged'] = $_POST['login'];
  12. $_SESSION['user_password'] = $_POST['haslo'];
  13. header ("Refresh: 5; URL=" . $_POST['redirect'] . "");
  14. echo "Zostajesz przekierowany na oryginalną stronę, której żądałeś!<br>";
  15. echo "(Jeśli przeglądarka nie obsługuje przekierowań, " .
  16. "<a href=\"" . $_POST['redirect']. "\">kliknij tutaj</a>)";
  17. } else {
  18. ?>
  19. <html>
  20. <head>
  21. <title>Niepoprawny login, lub hasło !!!</title>
  22. </head>
  23. <body>
  24. <p>
  25. Niepoprawna nazwa użytkownika lub hasło!<br>
  26. Zarejestrowałeś się?
  27. <a href="register.php">Kliknij tutaj</a>, aby się zarejestrować.<br>
  28. <form action="user_login.php" method="post">
  29. <input type="hidden" name="redirect"
  30. value="<?php echo $_POST['redirect']; ?>">
  31. Nazwa użytkownika: <input type="text" name="login"><br>
  32. Hasło: <input type="password" name="haslo"><br><br>
  33. <input type="submit" name="submit" value="Zaloguj">
  34. </form>
  35. </p>
  36. </body>
  37. </html>
  38. <?php
  39. }
  40. } else {
  41. if (isset($_GET['redirect'])) {
  42. $redirect = $_GET['redirect'];
  43. } else {
  44. $redirect = "index.php";
  45. }
  46. ?>
  47. <html>
  48. <head>
  49. <title>Logowanie</title>
  50. </head>
  51. <body>
  52. <p>
  53. Zaloguj się, podając nazwę użytkownika i hasło...<br>
  54. lub <a href="register.php">kliknij tutaj</a>, aby się zarejestrować.<br><br>
  55. <form action="user_login.php" method="post">
  56. <input type="hidden" name="redirect"
  57. value="<?php echo $redirect; ?>">
  58. Nazwa użytkownika: <input type="text" name="login"><br>
  59. Hasło: <input type="password" name="haslo"><br><br>
  60. <input type="submit" name="submit" value="Zaloguj">
  61. </form>
  62. </p>
  63. </body>
  64. </html>
  65. <?php
  66. }
  67. ?>


Zmieniając

  1. if (mysql_num_rows($result) == 1)


na wartość "0" logowanie działa, ale z kolei nie wyświetla się komunikat o błędnym haśle ..

pomóżcie, bo już sam nie wiem, przekopałem ten kod ze 100 razy i nie umiem znaleźć ..
lukasamd
Input z password ma name "password" a ty sprawdzasz w bazie $_POST['haslo'] smile.gif
BTW. Aż się prosi o sql injection poprzez login. Lepiej to popraw, no chyba że masz niezbyt w temacie nauczyciela smile.gif
gizmo1985
t.zn powiem szczerze tak tongue.gif niezbyt w temacie to jestem ja smile.gif dopiero zaczynam i wziąłem wielkie zadanie na głowę winksmiley.jpg

Chyba nie bardzo, to będzie działało .. password, to chyba w tym przypadku typ danych ? ;> czyż nie ? tongue.gif)


System rejestrowania mam tak i działa smile.gif

  1. <?php
  2. include "conn.inc.php";
  3. ?>
  4. <html>
  5. <head>
  6. <title>Panel logowania</title>
  7. </head>
  8. <body>
  9. <?php
  10. if (isset($_POST['submit']) && $_POST['submit'] == "Zarejestruj") {
  11. if ($_POST['login'] != "" &&
  12. $_POST['haslo'] != "" &&
  13. $_POST['imie'] != "" &&
  14. $_POST['nazwisko'] != "" &&
  15. $_POST['data_ur'] != "" &&
  16. $_POST['miasto'] != "" &&
  17. $_POST['wojewodztwo'] != "" &&
  18. $_POST['kod_pocztowy'] != "" &&
  19. $_POST['nr_tel'] != "" &&
  20. $_POST['email'] != "" &&
  21. $_POST['kat_prawa_jazdy'] != "") {
  22.  
  23. $query = "SELECT login FROM osoba " .
  24. "WHERE login = '" . $_POST['login'] . "';";
  25. $result = mysql_query($query)
  26.  
  27. if (mysql_num_rows($result) != 0) {
  28. ?>
  29. <p>
  30. <font color="#FF0000"><b>Nazwa użytkownika
  31. <?php echo $_POST['login']; ?> jest już w użyciu. Proszę wybrać
  32. inną!</b></font>
  33. <form action="register.php" method="post">
  34. Login:
  35. <input name="login2" type="text">
  36. <br>
  37. Imię: <input type="text" name="imie"
  38. value="<?php echo $_POST['imie']; ?>"><br>
  39. Nazwisko: <input type="text" name="nazwisko"
  40. value="<?php echo $_POST['nazwisko']; ?>"><br>
  41. Data urodzenia: <input type="text" name="data_ur"
  42. value="<?php echo $_POST['data_ur']; ?>"><br>
  43. Miasto: <input type="text" name="miasto"
  44. value="<?php echo $_POST['miasto']; ?>"><br>
  45. Województwo: <input type="text" name="wojewodztwo"
  46. value="<?php echo $_POST['wojewodztwo']; ?>"><br>
  47. Kod pocztowy: <input type="int" name="kod_pocztowy"
  48. value="<?php echo $_POST['kod_pocztowy']; ?>"><br>
  49. Numer telefonu: <input type="int" name="nr_tel"
  50. value="<?php echo $_POST['nr_tel']; ?>"><br>
  51. Adrea E-mail: <input type="text" name="email"
  52. value="<?php echo $_POST['email']; ?>"><br>
  53. Kategoria Prawa Jazdy: <input type="text" name="kat_prawa_jazdy"
  54. value="<?php echo $_POST['kat_prawa_jazdy']; ?>"><br>
  55.  
  56.  
  57. <input type="submit" name="submit" value="Zarejestruj"> &nbsp;
  58. <input type="reset" value="Wyczyść">
  59. </form>
  60. </p>
  61. <?php
  62. } else {
  63.  
  64.  
  65.  
  66. $query = "INSERT INTO osoba (login, haslo, imie,nazwisko, data_ur, miasto,
  67.  
  68. wojewodztwo, kod_pocztowy, nr_tel, email, kat_prawa_jazdy)".
  69.  
  70.  
  71. "VALUES ('" . $_POST['login'] . "', " .
  72. "(PASSWORD('" . $_POST['haslo'] . "')), '" .
  73. $_POST['imie'] . "', '" . $_POST['nazwisko'] .
  74. "','" . $_POST['data_ur'] . "','" . $_POST['miasto'] . "','" . $_POST
  75.  
  76. ['wojewodztwo'] . "','" . $_POST['kod_pocztowy'] . "','" . $_POST
  77.  
  78. ['nr_tel'] . "','" . $_POST['email'] . "', '" . $_POST
  79.  
  80. ['kat_prawa_jazdy'] . "');";
  81.  
  82.  
  83. $result = mysql_query($query)
  84.  
  85. $_SESSION['user_logged'] = $_POST['login'];
  86. $_SESSION['user_password'] = $_POST['haslo'];
  87. ?>
  88. <p>
  89. Dziękujemy, <?php echo $_POST['imie'] . " " .
  90. $_POST['nazwisko']; ?>, za zarejestrowanie się!<br>
  91. <?php
  92. header("Refresh: 5; URL=index.php");
  93. echo "Zakończono proces rejestracji! " .
  94. "Zostaniesz przeniesiony do oryginalnej storny!<br>";
  95. echo "(Jeśli przeglądarka nie obsługuje przekierowań, " .
  96. "<a href=\"index.php\">kliknij tutaj</a>)";
  97. die();
  98. }
  99. } else {
  100. ?>
  101. <p>
  102. <font color="#FF0000"><b>Wymagane jest podanie wszystkich danych dla zakończenia
  103.  
  104. procesu rejestracji!</b></font>
  105. <form action="register.php" method="post">
  106.  
  107. Login: <input type="text" name="login"
  108. value="<?php echo $_POST['login']; ?>"><br>
  109.  
  110.  
  111. Hasło: <input type="password" name="haslo"
  112. value="<?php echo $_POST['haslo']; ?>"><br>
  113. Imię: <input type="text" name="imie"
  114. value="<?php echo $_POST['imie']; ?>"><br>
  115. Nazwisko: <input type="text" name="nazwisko"
  116. value="<?php echo $_POST['nazwisko']; ?>"><br>
  117. Data urodzenia: <input type="text" name="data_ur"
  118. value="<?php echo $_POST['data_ur']; ?>"><br>
  119. Miasto: <input type="text" name="miasto"
  120. value="<?php echo $_POST['miasto']; ?>"><br>
  121. Województwo: <input type="text" name="wojewodztwo"
  122. value="<?php echo $_POST['wojewodztwo']; ?>"><br>
  123. Kod pocztowy: <input type="int" name="kod_pocztowy"
  124. value="<?php echo $_POST['kod_pocztowy']; ?>"><br>
  125. Numer telefonu: <input type="int" name="nr_tel"
  126. value="<?php echo $_POST['nr_tel']; ?>"><br>
  127. Adrea E-mail: <input type="text" name="email"
  128. value="<?php echo $_POST['email']; ?>"><br>
  129. Kategoria Prawa Jazdy: <input type="text" name="kat_prawa_jazdy"
  130. value="<?php echo $_POST['kat_prawa_jazdy']; ?>"><br>
  131.  
  132.  
  133. <input type="submit" name="submit" value="Zarejestruj"> &nbsp;
  134. <input type="reset" value="Wyczyść">
  135. </form>
  136. </p>
  137. <?php
  138. }
  139. } else {
  140. ?>
  141. <p>
  142. Witamy na stronie rejestracji!<br>
  143. Wymagamy wypełenienia pól nazwy użytkownika, hasła, adresu email,
  144. imienia i nazwiska!
  145. <form action="register.php" method="post">
  146. Login: <input type="text" name="login"><br>
  147. Hasło: <input type="password" name="haslo"><br>
  148. Imię: <input type="text" name="imie"><br>
  149. Nazwisko: <input type="text" name="nazwisko"><br>
  150. Data urodzenia: <input type="text" name="data_ur"><br>
  151. Miasto: <input type="text" name="miasto"><br>
  152. Województwo: <input type="text" name="wojewodztwo"><br>
  153. Kod pocztowy: <input type="int" name="kod_pocztowy"><br>
  154. Numer telefonu: <input type="int" name="nr_tel"><br>
  155. Adrea E-mail: <input type="text" name="email"><br>
  156. Kategoria Prawa Jazdy: <input type="text" name="kat_prawa_jazdy"><br> <br>
  157.  
  158.  
  159. <input type="submit" name="submit" value="Zarejestruj"> &nbsp;
  160. <input name="reser" type="reset" id="reser" value="Wyczyść">
  161. </form>
  162. </p>
  163. <?php
  164. }
  165. ?>
  166. </body>
  167. </html>


Dorzucę jeszcze kod z pliku, który includuję na początku winksmiley.jpg


  1. <?php
  2. $conn = mysql_connect("localhost", "macko", "test")
  3. or die(mysql_error());
  4. $db = mysql_select_db("portal")
  5. ?>
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.