私はphpでmysqli prepardクエリを使用しています。コードは次のとおりです。
$retreiveQuery = 'SELECT username, firstname, lastname FROM USERS WHERE username = ?';
if ($getRecords = $con->prepare($retreiveQuery)) {
$getRecords->bind_param("s", $username);
$getRecords->execute();
$getRecords->bind_result($username, $firstname, $lastname);
echo "<h1>".$username."</h1>
<p><strong>First Name: </strong>".$firstname."
<p><strong>Surname: </strong>".$lastname."
} else {
print_r($con->error);
これはかなり奇妙です。ユーザー名は、表示される唯一のフィールドです。他の列が返されない/バインドされないのはなぜですか?
私が行った場合
SELECT username, firstname, lastname FROM USERS WHERE username = 'test';
データベースに直接アクセスすると、すべてのフィールドが表示され、すべてに有効なデータが含まれます。