PHP小例子(6)--jQuery实现数据的增删改查综合案例

本例子是一个Ajax(jQuery)增删改查的综合案例
Bootstrap 5 + PHP 7.2通过
https://www.webslesson.info/2016/02/live-table-add-edit-delete-using-ajax-jquery-in-php-mysql.html 修改而来。适合初学者。
用到的数据库叫test,下面的是sql代码

-- ----------------------

CREATE TABLE IF NOT EXISTS `tbl_sample` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `first_name` varchar(50) NOT NULL,
  `last_name` varchar(50) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 ;

INSERT INTO `tbl_sample`(`id`,`first_name`,`last_name`) VALUES (1,'Mike','John');

前台部分index.php

<!doctype html>
<html lang="en">
  <head>
    <!-- Required meta tags -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>  

    <!-- Bootstrap CSS -->
    <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-giJF6kkoqNQ00vy+HMDP7azOuL0xtbfIcaT9wjKHr8RbDVddVHyTfAAsrekwKmP1" crossorigin="anonymous">

    <title>增删改查</title>
  </head>
  <body>
    <div class="container">
        <br />  
        <br />  
        <br />  
        <div class="table-responsive">  
            <h3 text="text-center">jQuery(Ajax)实现增删改查</h3><br />  
            <div id="live_data"></div>                 
        </div>  
    </div>
   

    <!-- Optional JavaScript; choose one of the two! -->

    <!-- Option 1: Bootstrap Bundle with Popper -->
    <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" integrity="sha384-ygbV9kiqUc6oa4msXn9868pTtWMgiQaeYH7/t7LECLbyPA2x65Kgf80OJFdroafW" crossorigin="anonymous"></script>
    <script>  
    $(document).ready(function(){
    
      
        function fetch_data()  
        {
    
      
            $.ajax({
    
      
                    url:"select.php",  
                    method:"POST",  
                    success:function(data){
    
      
                        $('#live_data').html(data);  
                    }  
            });  
        }  
        fetch_data();  
        $(document).on('click', '#btn_add', function(){
    
      
            var first_name = $('#first_name').text();  
            var last_name = $('#last_name').text();  
            if(first_name == '')  
            {
    
      
                    alert("Enter First Name");  
                    return false;  
            }  
            if(last_name == '')  
            {
    
      
                    alert("Enter Last Name");  
                    return false;  
            }  
            $.ajax({
    
      
                    url:"insert2.php",  
                    method:"POST",  
                    data:{
    
    first_name:first_name, last_name:last_name},  
                    dataType:"text",  
                    success:function(data)  
                    {
    
      
                        alert(data);  
                        fetch_data();  
                    }  
            })  
        });  
        function edit_data(id, text, column_name)  
        {
    
      
            $.ajax({
    
      
                    url:"edit.php",  
                    method:"POST",  
                    data:{
    
    id:id, text:text, column_name:column_name},  
                    dataType:"text",  
                    success:function(data){
    
      
                        alert(data);  
                    }  
            });  
        }  
        $(document).on('blur', '.first_name', function(){
    
      
            var id = $(this).data("id1");  
            var first_name = $(this).text();  
            edit_data(id, first_name, "first_name");  
        });  
        $(document).on('blur', '.last_name', function(){
    
      
            var id = $(this).data("id2");  
            var last_name = $(this).text();  
            edit_data(id,last_name, "last_name");  
        });  
        $(document).on('click', '.btn_delete', function(){
    
      
            var id=$(this).data("id3");  
            if(confirm("Are you sure you want to delete this?"))  
            {
    
      
                    $.ajax({
    
      
                        url:"delete.php",  
                        method:"POST",  
                        data:{
    
    id:id},  
                        dataType:"text",  
                        success:function(data){
    
      
                            alert(data);  
                            fetch_data();  
                        }  
                    });  
            }  
        });  
    });  
    </script>
    
  </body>
</html>

具体的后台部分
select.php 查询

<?php  
    $connect = mysqli_connect("localhost", "root", "password", "test");  
    $output = '';  
    $sql = "SELECT * FROM tbl_sample ORDER BY id DESC";  
    $result = mysqli_query($connect, $sql);  
    $output .= '  
        <div class="table-responsive">  
            <table class="table table-bordered">  
                    <tr>  
                        <th width="10%">Id</th>  
                        <th width="40%">First Name</th>  
                        <th width="40%">Last Name</th>  
                        <th width="10%">Delete</th>  
                    </tr>';  
    if($result && mysqli_num_rows($result) > 0)  
    {
    
      
        while($row = mysqli_fetch_array($result))  
        {
    
      
            $output .= '  
                    <tr>  
                        <td>'.$row["id"].'</td>  
                        <td class="first_name" data-id1="'.$row["id"].'" contenteditable>'.$row["first_name"].'</td>  
                        <td class="last_name" data-id2="'.$row["id"].'" contenteditable>'.$row["last_name"].'</td>  
                        <td><button type="button" name="delete_btn" data-id3="'.$row["id"].'" class="btn btn-xs btn-danger btn_delete">x</button></td>  
                    </tr>  
            ';  
        }  
        $output .= '  
            <tr>  
                    <td></td>  
                    <td id="first_name" contenteditable></td>  
                    <td id="last_name" contenteditable></td>  
                    <td><button type="button" name="btn_add" id="btn_add" class="btn btn-xs btn-success">+</button></td>  
            </tr>  
        ';  
    }  
    else  
    {
    
      
        $output .= '<tr>  
                            <td colspan="4">Data not Found</td>  
                        </tr>';  
    }  
    $output .= '</table>  
        </div>';  
    echo $output;  
    ?>

edit.php修改

<?php  
    $connect = mysqli_connect("localhost", "root", "password", "test");  
    $id = $_POST["id"];  
    $text = $_POST["text"];  
    $column_name = $_POST["column_name"];  
    $sql = "UPDATE tbl_sample SET ".$column_name."='".$text."' WHERE id='".$id."'";  
    if(mysqli_query($connect, $sql))  
    {
    
      
        echo '更新成功';  
    }  
 ?>

insert.php 插入

<?php  
    $connect = mysqli_connect("localhost", "root", "password", "test");  
    $sql = "INSERT INTO tbl_sample(first_name, last_name) VALUES('".$_POST["first_name"]."', '".$_POST["last_name"]."')";  
    if(mysqli_query($connect, $sql))  
    {
    
      
        echo '插入成功';  
    }  
 ?> 

delete.php 删除

<?php  
    $connect = mysqli_connect("localhost", "root", "password", "test");  
    $sql = "DELETE FROM tbl_sample WHERE id = '".$_POST["id"]."'";  
    if(mysqli_query($connect, $sql))  
    {
    
      
        echo '删除成功';  
    }  
 ?>

猜你喜欢

转载自blog.csdn.net/yaoguoxing/article/details/112108426
今日推荐