Home > Backend Development > PHP Tutorial > How to Insert Multiple Form Inputs into a Database Using AJAX and PHP?

How to Insert Multiple Form Inputs into a Database Using AJAX and PHP?

Susan Sarandon
Release: 2024-12-05 03:59:09
Original
692 people have browsed it

How to Insert Multiple Form Inputs into a Database Using AJAX and PHP?

Using Ajax and PHP to Insert Multiple Form Inputs into a Database

The provided form generates multiple input fields based on user selection. To submit this data to a database using Ajax, several steps are involved:

1. Generate Multiple Input Fields:

The PHP code generates multiple input fields using a loop, as shown in your example:

<?php
$i = 1;
while ($i <= $num_to_enter) {
    $form_output .= "First Name: <input>
Copy after login

2. Create an Ajax Function:

The JavaScript function captures the data from all input fields and sends it to the PHP script:

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;
}
Copy after login

3. Process the Ajax Request in PHP:

The process.php script receives the POST data and inserts it into the database:

<?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++;
}
?>
Copy after login

4. Return a JSON Response:

After successfully inserting the data, the process.php script sends a JSON response to the Ajax function. This response can be used to display a success message, for example.

echo json_encode(array('success' => true));
?>
Copy after login

5. Handle the JSON Response in the Ajax Function:

In the JavaScript Ajax function, the success method handles the JSON response from the PHP script:

success: function(data) {
    if (data.success) {
        // Display a success message
    } else {
        // Display an error message
    }
}
Copy after login

By following these steps, you can successfully submit data from multiple form inputs to a database using Ajax and PHP.

The above is the detailed content of How to Insert Multiple Form Inputs into a Database Using AJAX and PHP?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template