Maison >développement back-end >tutoriel php >Comment utiliser Ajax et PHP pour remplir une base de données à partir d'un formulaire dynamique avec plusieurs entrées ?

Comment utiliser Ajax et PHP pour remplir une base de données à partir d'un formulaire dynamique avec plusieurs entrées ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-07 11:16:12796parcourir

How to Use Ajax and PHP to Populate a Database from a Dynamic Form with Multiple Inputs?

Ajax et PHP : remplir une base de données via plusieurs entrées de formulaire

Introduction

Vous disposez d'un formulaire PHP avec plusieurs champs de saisie dont la quantité est définie par l'utilisateur . Pour saisir efficacement ces données dans une base de données, Ajax est une solution viable. Voici une solution adaptée à votre scénario spécifique.

Implémentation Ajax

Implémentez la fonction Ajax suivante pour répondre à vos besoins :

function MyFunction(){

    var i = 1;
    var x = $('#num_to_enter').val();
    var formData = new FormData;

    while (i <= x){
        var name = $('#fname[i]').val();
        var lname = $('#lname[i]').val();
        var email = $('#Email[i]').val();

        formData.append("fname[" + i + "]", name);
        formData.append("lname[" + i + "]", lname);
        formData.append("email[" + i + "]", email);
        i++;
    }

    $.ajax({
        url: 'process.php',
        type: "POST",
        data: formData,
        processData: false,
        contentType: false,
        success : function(data){
            window.setTimeout(function() {
                $('#SuccessDiv').html('Info Added!');
                $('#data').css("display","block");
                $('#data').html(data);
            }, 2000);
        }
    });
    return false;
}

Structure du formulaire

La structure de votre formulaire fournie reste valide :

echo "<form method='post'>";

$i=1;

while($i <= $num_to_enter){

$form_output .= "First Name:

<input>

Base de données Insertion

Dans votre script d'insertion de base de données, assurez-vous d'inclure les données Ajax en conséquence :

while ($i <= $x){

    $x = $_POST['num_to_enter'];
    $fname = $_POST['fname[$i]'];
    $lname = $_POST['lname[$i]'];
    $email = $_POST['email[$i]'];

    $sql = "INSERT INTO `mytable` 
        (`firstname`, `lastname`, `email`) VALUES ('$fname[$i]', '$lname[$i]', '$email[$i]');";

    $i++;
}

Conclusion

Cette solution compatible Ajax capture efficacement les entrées utilisateur à partir des données générées dynamiquement formulaire et le transmet à votre script PHP pour l'insertion dans la base de données.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn