Ajax と PHP を使用してデータベースに複数のフォーム入力を挿入する
提供されたフォームは、ユーザーの選択に基づいて複数の入力フィールドを生成します。 Ajax を使用してこのデータをデータベースに送信するには、次のいくつかの手順が必要です。
1.複数の入力フィールドを生成する:
例に示すように、PHP コードはループを使用して複数の入力フィールドを生成します:
<?php $i = 1; while ($i <= $num_to_enter) { $form_output .= "First Name: <input>
2。 Ajax 関数を作成します:
JavaScript 関数はすべての入力フィールドからデータを取得し、それを PHP スクリプトに送信します:
function MyFunction() { var i = 1; var x = $('#num_to_enter').val(); var data = ""; var errorMessage = false; // Check if all fields are filled while (i <= x) { var name = $('#fname' + i).val(); var lname = $('#lname' + i).val(); var email = $('#Email' + i).val(); if (name == "" || lname == "" || email == "") { errorMessage = true; } data += "fname[" + i + "]=" + name + "&lname[" + i + "]=" + lname + "&email[" + i + "]=" + email + "&"; i++; } if (!errorMessage) { $('#SuccessDiv').html('Entering Info. <img src="images/processing.gif" />'); $.ajax({ url: 'process.php', type: "POST", data: data, success: function(data) { window.setTimeout(function() { $('#SuccessDiv').html('Info Added!'); $('#data').css("display","block"); $('#data').html(data); }, 2000); } }); } else { alert('Please fill out all fields.'); } return false; }
3. PHP で Ajax リクエストを処理します:
process.php スクリプトは POST データを受信し、それをデータベースに挿入します:
<?php $i = 1; while ($i <= $_POST['num_to_enter']) { $fname = $_POST['fname[' . $i . ']']; $lname = $_POST['lname[' . $i . ']']; $email = $_POST['email[' . $i . ']']; // Execute INSERT query into database // Set $sql accordingly for your database syntax $i++; } ?>
4. JSON 応答を返す:
データが正常に挿入された後、process.php スクリプトは JSON 応答を Ajax 関数に送信します。この応答は、成功メッセージを表示するために使用できます (例:
echo json_encode(array('success' => true)); ?>
5)。 Ajax 関数で JSON 応答を処理します:
JavaScript Ajax 関数では、success メソッドが PHP スクリプトからの JSON 応答を処理します:
success: function(data) { if (data.success) { // Display a success message } else { // Display an error message } }
次の手順に従います。 Ajax と PHP を使用して、複数のフォーム入力からのデータをデータベースに正常に送信できます。
以上がAJAX と PHP を使用して複数のフォーム入力をデータベースに挿入する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。