mysqli_query("SELECT...

0

Witam.
Mam taki kawałeczek kodu:

$ile = mysqli_query($conn,"SELECT * FROM 'user' where login = $account");
$ile = mysqli_num_rows($ile);

I wyskakuje mi błąd:
Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given
Domyslam się, że coś źle zrobiłem w pytaniu. Nie mam pojęcia jednak jak to napisac dobrze. Probowałęm bez apostrofu przy "user", też nie działa.
Jakieś wskazówki?
Z góry dziękuję za pomoc.
Pozdrawiam.

1

Tworząc zapytania w ten sposób narażasz się na SQL injection.

Jeżeli masz wrażenie, że zapytanie nie wykonało się poprawnie - i masz prawo tak sądzić, bo interpreter powiedział ci, że mysqli_query zwróciło boolean, a (jak możemy przeczytać w dokumentacji) dla select będzie to false oznaczające błąd. No to go przeczytajmy.
$ile = mysqli_query($conn,"SELECT * FROM 'user' where login = $account") or echo(mysqli_error($conn));

0

Dziękuję. Muszę się przyzwyczaić do dokładniejszego sprawdzania co się dzieje;)
Niestety w tym przypadku wyskakuje:
No database selected
Wybierałem bazę w ten sposób:

define ('db_db','usersstr1');
mysqli_select_db($conn,db_db);

Więc dalej nie wiem o co chodzi.

0

No to wyrzuć sobie w sposób jak napisał Ci już @Rev jaki błąd zwrac mysqli_select_db (tak samo false oznacza błąd).

0

Znacznie prosciej by Ci bylo, gdybys zai teresowal sie PDO (http://php.net/manual/en/book.pdo.php, http://pl.wikibooks.org/wiki/PHP/Biblioteka_PDO).

1 użytkowników online, w tym zalogowanych: 0, gości: 1