1

データベースから読み取り、テーブルを表示するために別の関数で使用される配列を返すスクリプトがあります。ただし、関数はエラーをスローしています。

Fatal error: Call to a member function fetch_array() on a non-object in C:\xampp\htdocs\nu\userClass.php on line 205

MySQLi クラスのオブジェクトを既に作成しているため、エラーの原因がわかりません。これが私のコードです

function getUser($user_id)
        {
            require("config.php");
            //TODO Clean variables
            $dbc = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
            /* check connection */
            if (mysqli_connect_errno()) 
            {
            printf("Connect failed: %s\n", mysqli_connect_error());
            exit();
            }
            $query2 = "SELECT family.Position, food.Meal "."FROM family, food "."WHERE family.Position = food.Position";    
            $result = $dbc->query($query2);
            $row = $result->fetch_array();
            /* close connection */
            $dbc->close();
            return $row;
        }
4

1 に答える 1

1

このエラー メッセージは、SQL クエリにエラーがあることを示しているようです。

$dbc->query() への呼び出しを次の行に置き換えてみてください。

$result = $dbc->query($query2);
if ($result === false) {
    echo 'MySQL error: ' . $dbc->error;
}

これにより、より詳細なエラー メッセージが表示されます。

于 2012-04-27T13:15:33.087 に答える