How to Insert multiple data / input fields dynamically with jquery in php
By Super Admin |
Jun 10, 2021 |
PHP
how to insert multiple data in php mysql
In this post, you will learn how to Insert multiple data into DB in PHP MySQL | Create Multiple Form using jQuery to insert you multiple data into database using php in mysql.
We will create a form with input fields and a submit button. Now we will create multiple forms with the help of jQuery by appending the created FORM.
We will be using Bootstrap 5 version to design the user interface.
How to Insert multiple data / input fields dynamically with jquery in php mysql.
Step 1: Create a table named demo as follows:
CREATE TABLE `demo` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(191) NOT NULL,
`phone` varchar(191) NOT NULL,
PRIMARY KEY (`id`)
);
Step 2: Create a index.php file and design the form with input, write the Script to append the multiple form using jquery as given in below code:
<?php session_start(); ?>
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/css/bootstrap.min.css" rel="stylesheet">
<title>Funda Of Web IT</title>
</head>
<body>
<div class="container">
<div class="row">
<div class="col-md-12">
<?php
if(isset($_SESSION['status']))
{
?>
<div class="alert alert-warning alert-dismissible fade show" role="alert">
<strong>Hey!</strong> <?php echo $_SESSION['status']; ?>
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
</div>
<?php
unset($_SESSION['status']);
}
?>
<div class="card mt-4">
<div class="card-header">
<h4>How to Insert Multiple Data into Database in PHP MySQL
<a href="javascript:void(0)" class="add-more-form float-end btn btn-primary">ADD MORE</a>
</h4>
</div>
<div class="card-body">
<form action="code.php" method="POST">
<div class="main-form mt-3 border-bottom">
<div class="row">
<div class="col-md-4">
<div class="form-group mb-2">
<label for="">Name</label>
<input type="text" name="name[]" class="form-control" required placeholder="Enter Name">
</div>
</div>
<div class="col-md-4">
<div class="form-group mb-2">
<label for="">Phone Number</label>
<input type="text" name="phone[]" class="form-control" required placeholder="Enter Phone Number">
</div>
</div>
</div>
</div>
<div class="paste-new-forms"></div>
<button type="submit" name="save_multiple_data" class="btn btn-primary">Save Multiple Data</button>
</form>
</div>
</div>
</div>
</div>
</div>
<script src="https://code.jquery.com/jquery-3.6.0.js" ></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.bundle.min.js"></script>
<script>
$(document).ready(function () {
$(document).on('click', '.remove-btn', function () {
$(this).closest('.main-form').remove();
});
$(document).on('click', '.add-more-form', function () {
$('.paste-new-forms').append('<div class="main-form mt-3 border-bottom">\
<div class="row">\
<div class="col-md-4">\
<div class="form-group mb-2">\
<label for="">Name</label>\
<input type="text" name="name[]" class="form-control" required placeholder="Enter Name">\
</div>\
</div>\
<div class="col-md-4">\
<div class="form-group mb-2">\
<label for="">Phone Number</label>\
<input type="text" name="phone[]" class="form-control" required placeholder="Enter Phone Number">\
</div>\
</div>\
<div class="col-md-4">\
<div class="form-group mb-2">\
<br>\
<button type="button" class="remove-btn btn btn-danger">Remove</button>\
</div>\
</div>\
</div>\
</div>');
});
});
</script>
</body>
</html>
Step 3: Create a file named code.php and paste the below code as follows:
<?php
session_start();
$con = mysqli_connect("localhost","root","","phptutorials");
if(isset($_POST['save_multiple_data']))
{
$name = $_POST['name'];
$phone = $_POST['phone'];
foreach($name as $index => $names)
{
$s_name = $names;
$s_phone = $phone[$index];
// $s_otherfiled = $empid[$index];
$query = "INSERT INTO demo (name,phone) VALUES ('$s_name','$s_phone')";
$query_run = mysqli_query($con, $query);
}
if($query_run)
{
$_SESSION['status'] = "Multiple Data Inserted Successfully";
header("Location: insert-multiple-data.php");
exit(0);
}
else
{
$_SESSION['status'] = "Data Not Inserted";
header("Location: insert-multiple-data.php");
exit(0);
}
}
?>
Thanks for reading...