Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] Problem z mysql_num_rows
DerekDX
post
Post #1





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 23.04.2010

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


Witam,
tworze system logowania i mam pewien problem który według mnie nie powinien miec miejsca a ma.
Otoż w części skryptu zawierającego
  1. $wynik=mysql_query($zapytanie);
  2. $ile_wierszy=mysql_num_rows($wynik);
  3. if($ile_wierszy == 1)
  4. {


pojawaia sie błąd o treści

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in

oto caly skrypt
  1. <?php
  2. require("adm_konfiguracja.php");
  3. $login = $_POST['login'];
  4. $password = $_POST['password'];
  5. $jeden = 1;
  6. $polaczenie=mysql_connect($host,$user,$haslo);
  7. mysql_select_db('$baza',$polaczenie);
  8.  
  9. if ($_POST['submit'])
  10. {
  11. $zapytanie="select*from users where login='$login' "." and password=sha1('$password')";
  12. $wynik=mysql_query($zapytanie);
  13. $ile_wierszy=mysql_num_rows($wynik);
  14. if($ile_wierszy == 1)
  15. {
  16. $wiersz=mysql_fetch_assoc($wynik);
  17. session_register("USERNAME");
  18. session_register("USERID");
  19. $_SESSION['USERNAME']=$wiersz['login'];
  20. $_SESSION['USERID']=$wiersz['user_id'];
  21. echo 'zalogowany';
  22. }
  23. else
  24. {
  25. echo 'nie zalogowany';
  26. }
  27. }
  28. ?>
  29.  
  30. <form action="index1.php" method="post">
  31.  
  32. <table border=0>
  33. <tr><td width=100>Login</td><td style=width:200px><input type="text" name="login"></td></tr>
  34. <tr><td width=100>Hasło</td><td style=width:200px><input type="password" name="password"></td></tr>
  35. <tr><td width=100></td><td><input type="submit" name="submit" value="Zaloguj"></td></tr>
  36. </table>
  37. </form>



Skrypt ma wykonac petle jezeli ilosc zwracanych wartosci przez baze danych bedzie rowna 1
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Masz blad zapytania.
Jak sobie radzić z analizą takich bledow masz napisane tu:
Temat: Jak poprawnie zada pytanie
Go to the top of the page
+Quote Post
DerekDX
post
Post #3





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 23.04.2010

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


ok wlączylem opcje wyswietlania wszystkich błędów poprawiłem (tak myśle zapytanie mysql) na
  1. $zapytanie="select*from users where login='$login' and password=sha1('$password')";


i teraz moj skrypt wyglada tak:
  1. <?php
  2. ini_set('display_errors','1');
  3. require("adm_konfiguracja.php");
  4. $login = $_POST['login'];
  5. $password = $_POST['password'];
  6. $polaczenie=mysql_connect($host,$user,$haslo);
  7. mysql_select_db('$baza',$polaczenie);
  8.  
  9. if ($_POST['submit'])
  10. {
  11. $zapytanie="select*from users where login='$login' and password=sha1('$password')";
  12. $wynik=mysql_query($zapytanie);
  13. $ile_wierszy=mysql_num_rows($wynik);
  14. if($ile_wierszy == 1)
  15. {
  16. $wiersz=mysql_fetch_assoc($wynik);
  17. session_register("USERNAME");
  18. session_register("USERID");
  19. $_SESSION['USERNAME']=$wiersz['login'];
  20. $_SESSION['USERID']=$wiersz['user_id'];
  21. echo 'zalogowany';
  22. }
  23. else
  24. {
  25. echo 'nie zalogowany';
  26. }
  27. }
  28. ?>
  29.  


i nadal w 15 lini wyskakuje błąd:
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in [ściezka do pliku]
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Miales wyswietlic błąd zapytania. Nie zrobiles tego. W link masz o tym bardzo wyraźnie wspomniane. Przeczytaj więc go jeszcze raz bardzo dokladnie. Tam są proste informacje napisane po polsku więc nie powinienes miec wiekszych problemow ze zrozumieniem tego
Go to the top of the page
+Quote Post
set4812
post
Post #5





Grupa: Zarejestrowani
Postów: 150
Pomógł: 3
Dołączył: 13.04.2010

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


A co pokazuje bład??
Go to the top of the page
+Quote Post
DerekDX
post
Post #6





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 23.04.2010

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


no tak sorry.
błąd bazy:No database selected

ale tu mam przeciez wybrana baze danych:

  1. $polaczenie=mysql_connect($host,$user,$haslo);
  2. mysql_select_db('$baza',$polaczenie);


zmienna pochodza z kliku konfiguracyjnego zawierającego:
  1. <?php
  2. $host="localhost";
  3. $user="root";
  4. $haslo="root";
  5. $baza="agencja";
  6. ?>
Go to the top of the page
+Quote Post
nospor
post
Post #7





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




nie: '$baza'
a: $baza

Lektura OBOWIĄZKOWA dla Ciebie:
http://pl.php.net/manual/pl/language.types.string.php
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 25.08.2025 - 18:14