エラーの詳細な説明はありません。上記のエラーは私が得ている唯一のものです。私はまた、エラーの行を取得することができ、それは私がfetchAll結果をしようとするものです。巨大なクエリを返すSQLSTATE [HY000]:一般的なエラー
$id = (int) base64_decode($id);
try {
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$conn->beginTransaction();
$sql = "SET @i:=0; SELECT result.* FROM (SELECT @x:[email protected]+1 AS position, temp.* FROM (SELECT u.id, u.fbname, MAX(c.likeit + c.loveit + c.cute + c.aw) AS total, c.likeit, c.loveit, c.cute, c.aw FROM currentphoto AS c LEFT JOIN users AS u ON u.id = c.id GROUP BY u.id ORDER BY total DESC) temp) result WHERE id = :id";
$stmt = $conn->prepare($sql);
$stmt->bindParam(':id', $id, PDO::PARAM_INT);
$stmt->execute();
$rows = $stmt->fetchAll(PDO::FETCH_OBJ);
$conn->commit();
} catch (Exception $e) {
$conn->rollBack();
echo $e->getMessage();
}
if ($rows != null) {
return json_encode(base64_encode($rows));
} else return null;
私は、PDOでmysql変数を使用すると、別のクエリで宣言を使用する必要があるかもしれません。そうですか?もしそうなら、どうしたらいいですか?私は最初のステートメントを変数で実行し、2番目のステートメントはその後で実行しますか?
それが正しくない場合、問題は何ですか?ありがとうございました
は、より具体的なUBことができますについて説明しますlまたはスクリーンショット。あなたのお問い合わせにお答えします。 –