[英]I am trying to retrieve data from a database using ajax and populate in form that is in a bootstrap modal
I need a help here when I click on the edit button on the image below i expect to see data populated on a form in a bootstrap modal window I am using jquery ajax method to populate the data in the form of 当我点击下图中的编辑按钮时,我需要一个帮助,我希望看到在引导模态窗口中的表单上填充的数据我正在使用jquery ajax方法以数据的形式填充数据
and the edit modal image 和编辑模态图像
Here is code for the home page 这是主页的代码
<?php require_once("connect.php"); ?> <?php require_once("fetch.php"); ?> <?php require_once("select.php"); ?> <?php require_once("process.php"); ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Home</title> <link href="css/bootstrap.min.css" rel="stylesheet"> <link rel="stylesheet" href="css/style.css"> <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries --> <!-- WARNING: Respond.js doesn't work if you view the page via file:// --> <!--[if lt IE 9]> <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script> <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> <![endif]--> </head> <body> <div class="container"> <div class="row"> <div class="col-sm-8 col-sm-offset-2"> <ul class="nav nav-pills"> <li><a href="#">Home</a></li> </ul> <button type="button" class="btn btn-primary pull-right" data-toggle="modal" data-target="#myModal">Add</button> <table class="table" id="table"> <tr> <th>S/N</th> <th>Name</th> <th>Email</th> <th>Description</th> <th>Edit</th> <th>View</th> <th>Delete</th> </tr> <?php $query = "SELECT * FROM contact"; $runQuery = mysqli_query($connect, $query); if(!$runQuery){ die("Could not run select query ".mysqli_error($connect)); } $sn = 1; while($row = mysqli_fetch_assoc($runQuery)){ ?> <tr> <td><?php echo $sn++ ?></td> <td><?php echo $row["name"] ?></td> <td><?php echo $row["email"] ?></td> <td><?php echo $row["description"] ?></td> <td> <button type="button" data-toggle="modal" data-target="#myModal" class="btn btn-warning btn-sm edit-data" id="<?php echo $row['userid'] ?>">Edit</button> </td> <td> <button type="button" data-target="#viewModal" data-toggle="modal" class="btn btn-primary btn-sm view-data" id="<?php echo $row['userid'] ?>">View</button> </td> <td> <button type="button" class="btn btn-danger btn-sm del-data" id="<?php echo $row['userid'] ?>">Danger</button> </td> </tr> <?php } ?> </table> <!-- Modal --> <div id="myModal" class="modal fade" role="dialog"> <div class="modal-dialog"> <!-- Modal content--> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal">×</button> <h4 class="modal-title">Add Data</h4> </div> <div class="modal-body"> <div id="success" class="alert alert-success"></div> <form class="form" method="POST" id="insertData"> <div id="nameError" class="alert alert-danger"></div> <div class="form-group"> <label>Name</label> <input type="text" class="form-control" name="name" id="name"> </div> <div id="emailError" class="alert alert-danger"></div> <div class="form-group"> <label>Email</label> <input type="text" class="form-control" name="email" id="email"> </div> <input type="hidden" name="userid" id="contactUserId"> <div id="descriptionError" class="alert alert-danger"></div> <div class="form-group"> <label>Description</label> <textarea name="description" id="description" class="form-control"></textarea> </div> <input type="submit" class="btn btn-primary" value="Add" name="add" id="add"> </form> </div> <div class="modal-footer"> <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> </div> </div> </div> </div> <div id="viewModal" class="modal fade" role="dialog"> <div class="modal-dialog"> <!-- Modal content--> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal">×</button> <h4 class="modal-title">View Data</h4> </div> <div class="modal-body" id="contactDetail"> </div> <div class="modal-footer"> <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> </div> </div> </div> </div> </div> </div> </div> <script src="js/jquery.js"></script> <script src="js/bootstrap.min.js"></script> <script src="js/myscript.js"></script> </body> </html>
This code is for entering and updating data in the database process.php 此代码用于输入和更新数据库process.php中的数据
<?php
if(!empty($_POST)){
$name = $_POST["name"];
$email = $_POST["email"];
$description = $_POST["description"];
$userid = $_POST["userid"];
if($userid != ''){
$query = "UPDATE contact SET name = '$name', email='$email', description='$description' WHERE userid = $userid ";
$runQuery = mysqli_query($connect, $query);
if(!$runQuery){
die("Could not run query ".mysqli_error($connect));
}
}else{
$query = "INSERT INTO contact(name, email, description) VALUES ";
$query .=" ('$name', '$email', '$description')";
$runQuery = mysqli_query($connect, $query);
if(!$runQuery){
die("Could not run insert query ".mysqli_error($connect));
}
}
}
This code retrieves data from database 此代码从数据库中检索数据
<?php
if(isset($_POST['userid'])){
$editId = (int)$_POST['userid'];
$query = "SELECT * FROM contact WHERE userid = $editId";
$runQuery = mysqli_query($connect, $query);
if(!$runQuery){
die("Could not run query ".mysqli_error($connect));
}
$getData = mysqli_fetch_assoc($runQuery);
echo json_encode($getData);
}
This is my js file 这是我的js文件
$(document).ready(function(){
$("#insertData").submit(function(event){
event.preventDefault();
if($("#name").val() == ""){
$("#nameError").css("display", "block").html("Name is required");
}else if ($("#email").val() == "") {
$("#emailError").css("display", "block").html("Email is required");
}else if ($("#description").val() == "") {
$("#descriptionError").css("display", "block").html("Description is required");
}else{
$.ajax({
url: "index.php",
method: "POST",
data: $("#insertData").serialize(),
success: function(data){
$("#success").css("display", "block").html("Data added");
$("#insertData")[0].reset();
}
});
}
});
$(document).on("click", ".edit-data", function(){
var contactId = $(this).attr("id");
$.ajax({
url:"index.php",
method: "POST",
data: {contactId:contactId},
dataType: "json",
success: function(data){
$("#name").val(data.name);
$("#email").val(data.email);
$("#description").val(data.description);
$("#contactUserId").val(data.userid);
$("#add").val("Update");
$("#myModal").modal("show");
}
});
});
$(document).on('click', '.view-data', function(){
var contactId = $(this).attr("id");
if(contactId != '')
{
$.ajax({
url:"index.php",
method:"POST",
data:{contactId:contactId},
success:function(data){
$('#contactDetail').html(data);
$('#viewModal').modal('show');
}
});
}
});
}); });
You are sending contactId
and in your PHP you are looking for userid
. 您正在发送
contactId
并且在您的PHP中,您正在寻找userid
。 Change your data to data: { userid: userid }
. 将您的数据更改为
data: { userid: userid }
。
$(document).on("click", ".edit-data", function() {
var userid = $(this).attr("id");
$.ajax({
url: "index.php",
method: "POST",
data: { userid: userid },
dataType: "json",
success: function(data) {
$("#name").val(data.name);
$("#email").val(data.email);
$("#description").val(data.description);
$("#contactUserId").val(data.userid);
$("#add").val("Update");
$("#myModal").modal("show");
}
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.