※ ChatGPTを利用し、要約された質問です(原文:PHPでエラーが出るのですが、解決できなくて困っています。)
PHPでエラーが出る!解決できない!教えてください
このQ&Aのポイント
PHPでエラーが発生しており、解決できない状況です。エラー文や該当箇所のコードが提供されていますが、2つ目のSQL文が実行できない問題に直面しています。試したことや予想される原因を記述し、解決策を提案してください。
PHPで発生しているエラーの原因や該当箇所のコードについて説明されています。特に2つ目のSQL文が実行できない問題に焦点が当てられており、解決策を求めています。提示されている情報を基に、原因を特定し解決策を提案してください。
PHPでエラーが発生しており、2つ目のSQL文が実行できない問題に直面しています。提供された情報では原因が特定できない状況ですが、エラー文や該当箇所のコードが提示されており、解決策を求めています。試したことやアドバイスがあれば教えてください。
PHPでエラーが出るのですが、解決できなくて困っています。
PHPでエラーが出るのですが、解決できなくて困っています。
エラー文は次のとおりです。
Fatal error: Call to a member function fetch() on a non-object in …
エラーの出る箇所は以下の8行目です。
$db = new PDO("{$db_server}", "{$db_account}", "{$db_pass}");
$db -> query('SET NAMES ujis');
$stt = $db -> query("SELECT COUNT(*) FROM sudoku WHERE level = '{$num}'");
while ($row = $stt -> fetch()) {
$start = rand(1, $row["COUNT(*)"]) - 1;
}
$stt = $db -> query("SELECT * FROM sudoku LIMIT '{$start}', 1");
while ($row = $stt -> fetch()) {
$list = array(0 => $row["1st"], 1 => $row["2nd"], 2 => $row["3rd"], 3 => $row["4th"], 4 => $row["5th"], 5 => $row["6th"], 6 => $row["7th"], 7 => $row["8th"], 8 => $row["9th"]);
$question -> dataSet($list);
}
$db = null;
SQL文が2つありますが、最初の方は実行出来ています。
なぜか2つ目のSQL分が実行できません。
$startには値が入っていることを確認済みです。
試しに7行目と8行目の間に「print_r($stt);」と入れてみましたが、何も入っていませんでした。
「SELECT * FROM sudoku LIMIT '{$start}', 1」のSQL文自体は「'{$start}'」の部分だけ適当な数値に変えてコマンドラインで実行し、データを取り出せることは確認済みですので、SQL分の間違いではないと思います。
この中でどこが間違いかわかれば教えてください。
もしくは、他にチェックする部分はあるでしょうか?
よろしくお願いいたします。
補足
どうもありがとうございます。 そういえばLIMIT句なので数値ですから、'は不要ですね。 単純ミスでお恥ずかしいです。 ご回答いただき、ありがとうございました。