1

約 25 の入力とそれを処理するコードを含むフォームがあります。コードが何らかの形で最後に編集されたのは 3 週間前です。ランダムにリセット接続の問題が発生し始めました。調査するために、問題のあるセクションを見つけるためにコードのセクションを切り取り始めました (セクションの切り取り、更新、繰り返し)。特定のセクション(切り取ったときにエラーが発生しなかったセクション)に絞り込んだら、犯人セクションのより小さなセクションでプロセスを繰り返し始めました。最後に、セクション全体をコメントアウトしました。それでもエラーが発生しました。次に、コメントアウトされたセクションを削除しましたが、エラーはありません!

これにより、エラーは私のコードにあるのではなく、サーバーの構成に対する最近の変更 (私は GoDaddy でホストしています) またはそのようなものであると結論付けることができます。このエラーの原因について何か提案はありますか? コードからコメントを削除してエラーを修正したことはありません。

詳細情報: フォームは最初は正しく読み込まれます。いずれかのボタンをクリックするとエラーが発生しますが、コードはエラーの前に完全に処理されます (ファイルの入出力を行うので、動作していることを確認できます)。これは、上記のセクションをスキップしてフォームをリロードするだけの「すべてクリア」ボタンでも発生します。

データベースとのやり取りは一切使用していません。このスクリプトは、Facebook API と Twitter API の両方を利用しています。

この時点からどのように進めればよいか本当にわかりません。必要に応じて、ファイル全体からコードを投稿するつもりですが、調査の結果、それは無意味であることがわかりました。問題のあるページへのリンクを提供することもできます。

更新: HTML フォーム自体の出力を除くすべてのコードをコメントアウトしました。処理コードはまったくありません。フォームを出力する関数は 1 つだけです。いずれかのボタンをクリックすると、接続がリセットされます。ただし、このコメントアウトされたコードを削除すると、接続がリセットされず、フォームがリロードされるだけです。

更新 #2。サイトを別のホストにアップロードしました。コードは問題なく正常に実行されます。

更新 #3。徹底的な調査の結果、問題の原因は次の関数呼び出しにあると判断しました。

preg_replace('/\b(\w)/e', 'strtoupper("$1")', $_POST['dessert_name'])

この行をコメントアウトすると、接続リセットエラーが発生します...削除すると、スクリプトは完全に実行されます。

4

1 に答える 1