mysqli_num_rows () ожидает, что параметр 1 будет mysqli_result, ноль задан [duplicate]
На этот вопрос уже есть ответ:
mysql_fetch_array () / mysql_fetch_assoc () / mysql_fetch_row () / mysql_num_rows и т. д.… ожидает, что параметр 1 будет ресурсом или результатом 31 ответЯ новичок в PHP и у меня новый вопрос. Я начинаю заново с mysqli.
Я работаю в небольшом регистре. Если я хочу получить значение, проверьте имя пользователя, если оно уже назначено, с помощью mysqli_num_rows мне выдается следующая ошибка: Предупреждение: mysqli_num_rows () ожидает, что параметр 1 будет mysqli_result, ноль задан в C: \ xampp \ htdocs \ index.php в строке 21
Кто-нибудь может мне там помочь? Код
<?php
$db = mysqli_connect(
'localhost',
'root',
'',
'holycms');
if(!db) {
exit("Verbindungfehler:" . mysqli_connect_error());
}
$username = $_POST["username"];
$password = $_POST["password"];
if(isset($_POST["username"]) OR isset($_POST["password"])) {
if(empty($_POST["username"]) OR empty($_POST["password"])) {
echo "Bitte fuelle alle Felder aus!"; } else {
$username = mysqli_real_escape_string($_POST['username']);
$rows = mysqli_query("SELECT FROM users WHERE username = ".'$username'."") or die(mysqli_error); }
if(mysqli_num_rows($rows) > 1) {
echo "Username bereits besetzt";
} elseif(!ctype_alnum($_POST['username'])) {
"Dein Benutzername darf keine Sonderzeichen besitzen";
} elseif(strlen($_POST["username"])) {
echo "Dein Username ist zu lang!";
} else {
$password = sha1($_POST["password"]);
$db = mysqli_query("INSERT INTO users (username, password) VALUES ('$username', '$password'") or die(mysqli_error);
}
}
?>