Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Problem z lgowaniem
Michalo1994
post 31.08.2013, 16:26:55
Post #1





Grupa: Zarejestrowani
Postów: 93
Pomógł: 0
Dołączył: 3.02.2009

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


Witam, piszę skrypt logowania na sesjach. Z bazy pobieram id i login:
  1. $query="SELECT id and username FROM users WHERE username='$username' AND password=SHA('$password');";

potem jeśli mysqli_num_rows jest 1 to ustawiam sesje ciastka itd itd.
Problem w tym, że ciągle wyskakuje błąd - błędny login lub hasło.

Dodałem więc w phpmyadmin login i hasło w sha -
  1. INSERT INTO users (username,password) VALUES ('test',SHA('test'));

Wszystko się pięknie dodaje.

Kolejno przez SQL w phpmyadmin chcę pobrać id i login usera u którego login=login i hasło = hasło przez polecenie:
  1. SELECT id AND username FROM users WHERE username='test' AND password=SHA('test');


Niestety zostaje zwrócony pusty wynik - 0 wyników.
Dlaczego?
Go to the top of the page
+Quote Post
nospor
post 31.08.2013, 16:41:07
Post #2





Grupa: Moderatorzy
Postów: 36 475
Pomógł: 6301
Dołączył: 27.12.2004




SELECT id AND username....
Zajrzyj do manuala i zobacz jak sie wymienia pola w select


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Michalo1994
post 31.08.2013, 17:21:33
Post #3





Grupa: Zarejestrowani
Postów: 93
Pomógł: 0
Dołączył: 3.02.2009

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


Dziękuję, mój błąd.
Niestety ciągle wypluwa zero wyników.
Dodaję username pola, password: sha('pola')
I komenda
  1. SELECT id, username FROM `users` WHERE username='pola' AND password=SHA('pola');

zwraca zerówę. JAka może być przyczyna?
Go to the top of the page
+Quote Post
php_amator
post 31.08.2013, 17:39:36
Post #4





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 30.08.2013

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


Jakiś czas temu też miałem podobny problem I okazało się że te chore '' `` "" powodowały błędne działanie skryptów.
Sprawdż d o k ł a d n i e czy wszstko w zapytaniach masz jak należy smile.gif

Ja sobie zrobiłem tak I wszystko pięknie działa dodałem też zapisywanie sesji dla potomności w logu smile.gif

  1. <form action="index.php" method="POST">
  2. <div class="login" id="login"> <input name="username" type="text" value="<?PHP print $username ; ?>" /></div>
  3. <div class="password" id="password"><input name="password" type="password" value="" /></div>
  4. <div id="logbutton">
  5. <button class="button" align="center" type="Submit" name="Submit" value="Submit"><b><h2> Login </h2></b></button></div>
  6. </form>


  1.  
  2. require_once("includes/connection.php");
  3.  
  4. $date = date("F j, Y, g:i a");
  5. if (isset($_POST['Submit'])) {
  6. $username = htmlspecialchars($_POST['username']);
  7. $password = htmlspecialchars($_POST['password']);
  8. $hashed_password = md5($password);
  9. $query = "SELECT * FROM users WHERE username = '$_POST[username]' AND hashed_password = '$hashed_password' LIMIT 1";
  10. $result = mysql_query($query, $connection);
  11. if (mysql_num_rows($result) ==1) {
  12. $_SESSION['loggedon'] = true;
  13. $ses_name = $_POST['username'];
  14. $file = "log.txt";
  15. $fp = fopen($file, "a");
  16. flock($fp, 2);
  17. fwrite($fp, "Session start: ".$date." - ".$ses_name."\r\n");
  18. flock($fp, 3);
  19. fclose($fp);
  20. header("Location: selector.php"); exit();
  21. } else {
  22. $_SESSION['loggedon'] = false;
  23. echo '<div id="warning" style="button" align="center" id="radar"><form action="index.php"><button></br><h4>User name/password combination incorrect.<br />Please make sure</br>your caps lock is off and try again!</h4><h8>click Login</h8></button></div>';
  24. }
  25. }


Może cię naprowadzi wink.gif
pozdrawiam
php_amator

Ten post edytował php_amator 31.08.2013, 17:50:36
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 Wersja Lo-Fi Aktualny czas: 3.06.2024 - 05:17