Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]logowanie, Logowanie do bazy danych
adamgr
post 20.03.2015, 09:34:09
Post #1





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 20.03.2015

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


Napisałem taki skrypt logowania do bazy danych, ale nie działa mimo wprowadzenia poprwnego loginu i hasło (takie dane znajdują się wtabeli bazy) nie pokazuje sie komunikat zalogowany oraz niepoprawne hasło
Co nalezy poprwić wtym skrypcie?
  1. <?php
  2. $username = $_POST['username'];
  3. $password = $_POST['username'];
  4. if ($username && $password)
  5. {
  6. $connect = mysql_connect ("localhost","root","zaq1@WSX")
  7. or die ("Nie można się połączyć");
  8. $db= mysql_select_db("log_in",$connect)
  9. or die ("Nie można wybrać bazy danych");
  10. $wynik = mysql_query("SELECT * FROM users WHERE username = '$username'");
  11. //echo $username;
  12. $numrows = mysql_num_rows($wynik);
  13. if ( $numrows !==0)
  14. {
  15.  
  16. while ($wiersz =mysql_fetch_array($wynik))
  17. {
  18. $dbusername = $wiersz['username'];
  19. $dbpassword = $wiersz['password'];
  20. }
  21.  
  22. if ( $username==$dbusername && $password==$dbpassword)
  23. {
  24. echo "Jesteś zalogowany";
  25. @$_SESSION['username']= $username;
  26. }
  27. else "hasło niepoprawne";
  28. }
  29. else
  30. die("użytkownik nie istnieje");
  31. }
  32. else die("Wpisz poprawnie nazwę użytkownika i hasło");
  33. ?>


Ten post edytował adamgr 20.03.2015, 13:52:41
Go to the top of the page
+Quote Post
castagir
post 20.03.2015, 10:41:45
Post #2





Grupa: Zarejestrowani
Postów: 146
Pomógł: 3
Dołączył: 28.10.2014

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


Może dlatego, że w

  1. $username = $_POST['username'];
  2. $password = $_POST['username'];
  3. if ($username && $password)


Podajesz te same dane.

Druga sprawa jeśli zamieszczasz kod na forum rób to w odpowiednich znacnzikach, aby był czytelniejszy dla innych.
Trzecia to proponuję nauczyć się metody laczenia z baza PDO i porzucic stary myslq_query.

Go to the top of the page
+Quote Post
Boshi
post 20.03.2015, 11:11:28
Post #3





Grupa: Zarejestrowani
Postów: 342
Pomógł: 15
Dołączył: 30.08.2011

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


Temat: Jak poprawnie zadac pytanie
i zastosuj formatowanie php bo sie czytać tego nie da.

@$_SESSION['username']= $username;

nie używaj małpy...

Ten post edytował Boshi 20.03.2015, 11:16:53
Go to the top of the page
+Quote Post
tomek200
post 20.03.2015, 18:22:24
Post #4





Grupa: Zarejestrowani
Postów: 102
Pomógł: 4
Dołączył: 28.12.2014

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


Zmień to:
  1. while ($wiersz =mysql_fetch_array($wynik))
  2. {
  3. $dbusername = $wiersz['username'];
  4. $dbpassword = $wiersz['password'];
  5. }

Na to:
  1. while ($wiersz =mysql_fetch_assoc($wynik))
  2. {
  3. $dbusername = $wiersz['username'];
  4. $dbpassword = $wiersz['password'];
  5. }

Prawdopodobnie błędem była ta linijka bo dawając mysql_fetch_array podajesz wyniki z tabeli array czyli liczbami licząc od zera a stosując mysql_fetch_assoc możesz podać nazwę wiersza w tabeli
  1. while ($wiersz =mysql_fetch_array($wynik))
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: 14.08.2025 - 01:52