[PHP + MySQL] Запрос базы данных SELECT, который не дал результата
Я пытаюсь получить доступ к своей базе данных, чтобы получить некоторые данные, но она продолжает возвращаться со следующими ошибками.
Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in C:\xampp\htdocs\default.php on line 84
Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in C:\xampp\htdocs\default.php on line 86
Я проверил соединение, и код правильно вводит данные, это просто запрос результатов, который не возвращает никаких значений. Лично я не вижу, где ошибка, потому что другие запросы, такие как INSERT и CREATE, работают отлично.
<?php
mysqli_select_db($conn, $dbName);
$sql = "SELECT * FROM tbl_users WHERE id = 1;";
$result = mysqli_query($conn, $sql);
echo mysqli_num_rows($result); //Line 84
if (mysqli_num_rows($result) > 0) { //Line 86
while($row = mysqli_fetch_assoc($result)) {
...
}
} else {
echo "0 results";
}
?>
Если вам требуется дополнительная информация, пожалуйста, спросите меня, и я постараюсь предоставить ее.
Полный код:
//**Create Connection**//
$conn = mysqli_connect($serverName, $username, $password);
//**Check Connection**//
if (!$conn) { die("Connection failed: " . mysqli_connect_error()); }
else { echo "<p>Connected successfully!</p>"; }
//**Create Database**//
$dbName = "myDB";
$sql = "CREATE DATABASE IF NOT EXISTS " . $dbName . " CHARACTER SET utf8 COLLATE utf8_general_ci;";
//Error Handling
if (!mysqli_query($conn, $sql)) { echo "Error creating database: " . mysqli_error($conn); }
else { echo "<p>Database created successfully!</p>"; }
//**Create Table**//
mysqli_select_db($conn, $dbName);
$tbl_name = "tbl_users";
$sql = "CREATE TABLE IF NOT EXISTS " . $tbl_name . " (id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstName VARCHAR(64) NOT NULL, lastName VARCHAR(64) NOT NULL, userEmail VARCHAR(256) NOT NULL, reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP) CHARACTER SET utf8 COLLATE utf8_general_ci;";
//Error Handling
if (!mysqli_query($conn, $sql)) { echo "Error creating table: " . mysqli_error($conn); }
else { echo "<p>Table '" . $tbl_name . "' created successfully!</p>"; }
mysqli_select_db($conn, $dbName);
$sql = "SELECT * FROM tbl_users WHERE id = 1";
$result = mysqli_query($conn, $sql) or die(mysqli_error($conn));
if (!$result = mysqli_query($conn, $sql)) {
printf("Errormessage: %s\n", mysqli_error($conn));
}
if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) {
echo $row . "<br>";
}
} else {
echo "0 results";
}