私は、ユーザー数の推測値を推測する関数を作成しようとしています。テーブルにはuserIDとtieBreakerPointsがあります。エラーがなく、結果は常にゼロです
function getUserTBA($userID) {
global $mysqli;
// loop through user totals & calculate average for each user
$sql = "SELECT u.userID, p.userID, AVG(p.tieBreakerPoints) AS 'avarage' ";
$sql .= "FROM " . DB_PREFIX . "picksummary p";
$sql .= "inner join " . DB_PREFIX . "users u on p.userID = u.userID ";
$sql .= "WHERE p.userID = " . $user->userID . " ";
$sql .= "GROUP BY p.userID";
$query = $mysqli->query($sql);
if ($query->num_rows > 0) {
$row = $query->fetch_array();
return (int)$row['average'];
}
return 0;
}
私が関数を呼び出すと、ゼロの値しか得られないようですが、SQLで直接SQLクエリを実行すると結果が得られます。私はこの機能で何かを逃していますか?
ここで、 'DB_PREFIX'は定義されていますか? '$ user'はどこに定義されていますか?これは独立した関数かクラスメソッドか? –
あなたはどんな警告も受けていますか? – Naeem
'return 0;'の前に 'echo $ mysqli-> error;'を置き、それが何であるか教えてください – musashii