jQuery と PHP: フォームのシリアル化と送信
を使用しているにもかかわらず、フォームからのデータがサーバーに送信されないという問題が発生しました。 jQueryを使用してシリアル化します。問題は、フォーム送信の処理方法にあります。
JavaScript コードでは、非推奨の $.post() の代わりに $.ajax() 関数を使用する必要があります。 $.ajax() 関数は、より優れた柔軟性とカスタマイズ オプションを提供します。更新された JavaScript コードは次のとおりです。
<code class="javascript">$(document).ready(function(e) { $("#contactForm").submit(function(event) { event.preventDefault(); // Prevent default browser form submission var datastring = $("#contactForm").serialize(); $.ajax({ type: "POST", url: "getcontact.php", data: datastring, dataType: "json", success: function(data) { // Parse and handle server response }, error: function() { // Handle error } }); return false; }) });</code>
更新されたスニペット内:
PHP スクリプト (getcontact.php) が $_POST を使用してデータを正しくフェッチしていることを確認してください。それでもデータがサーバーに到達しない場合は、無効なフォーム データ解析や不適切なセキュリティ設定など、潜在的なサーバー構成の問題がないか確認してください。さらに、jQuery ライブラリが適切に含まれ、ページに読み込まれていることを確認してください。
次の手順に従うことで、データが正しく送信されない問題を解決できるはずです。
以上がjQuery フォーム データがサーバーに到達しないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。