エラー メッセージにもかかわらず、コードはデータベースを正常に更新しているようです。問題は、更新または挿入クエリ後の fetchAll() の使用にあります。
エラー メッセージ「SQLSTATE[HY000]: 一般エラー」には、実際のエラーに関する情報はほとんどありません。問題。これは通常、データベース クエリに関する一般的な問題を示しています。
コードでは、更新クエリを実行した後、 fetchAll() を使用して結果を取得しています。このメソッドは通常、選択クエリで使用され、クエリによって返されたすべての行を取得します。ただし、挿入または更新クエリの場合、 fetchAll() は不要であり、エラーが発生する可能性があります。
エラーを解決するには、単に fetchAll() ステートメントを削除します。
<code class="php">try { $stmt = $pdo->prepare("UPDATE $page SET $section = :new_content WHERE $section = '$old_content'"); $stmt->execute(array( 'new_content' => $new_content )); echo "Database updated!"; } catch(PDOException $e) { echo 'ERROR UPDATING CONTENT: ' . $e->getMessage(); }</code>
以上がデータベースの更新時に fetchAll() が PDO で「SQLSTATE[HY000]: 一般エラー」を引き起こすのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。