何らかの理由で、私のSQLクエリのいくつかは奇妙に数値を処理しているようです。たとえば、私のmySQLデータベースには、pointsというINT(11)フィールドを持つusersというテーブルがあります。このフィールドを取得しようとすると、正しく返される場合とnullが返される場合があります。このクエリは"User fMcBBx has points according to database"
毎回返されます:
$query = "SELECT points FROM users WHERE user_id = '$this->getID()'";
$result = DBCore::call()->fetchRow($query);
echo "User {$this->getID()} has {$result['points']} points according to database";
私のコンストラクターからのこれは毎回正しく番号を返しますが、次のようになり"User fMcBBx has 1050 points according to database"
ます。
SELECT first,
last,
email,
points,
level,
gender
FROM users
WHERE user_id = '{$this->id}'
このフィールドを正しく返すパターンと返さないパターンがクエリに見つかりませんでした。PHPmyAdminのデータベースに対して実行してすべてをチェックし、すべてが機能していることを確認しました。また、すべての入力値をエコーして、正しく転送されていることを確認しました。一部のクエリでnullが発生するのに、他のクエリではnullが発生しないのはなぜですか?