今天我来给大家介绍一个PHP-MySQL的小项目。

使用 PHP和前台Ajax 实现在前台对MySQL数据库中数据的增、删等操作语句功能。

如果有问题,欢迎拍砖~ 有不懂的地方,提出来咱们一起探讨~

首先,我们先做好前台HTML、CSS样式,代码如下:

<head><meta charset="utf-8" /><title>主页</title><style type="text/css">#table{                width:600px;margin: 20px auto;border-collapse: collapse;                                }#table thead tr{height: 30px;                        background-color: orange;color: white;                            }#table tbody tr{height: 30px;                        }#table th,td{                border: 1px solid black;}#table a{color: dodgerblue;cursor: pointer;}</style></head><body><h1 align="center">用户管理系统</h1><hr /><table id="table">        <thead ><tr><th>用户Id</th><th>用户名</th><th>密码</th><th>真实姓名</th><th>操作</th></tr></thead><tbody></tbody>

<tfoot>      // 增加数据时使用      <tr><td><input type="text" name="userid"  value="id无需输入" disabled="disabled"/></td><td><input type="text" name="username"/></td><td><input type="text" name="pwd"  /></td><td><input type="text" name="truename"  /></td><td align="center"><input type="button" onclick="addUser()" value="新增用户" /></td></tr>            </tfoot></table></body>

接下来我们需要实现的功能是,在每次更改数据或者刷新页面的时候,都可以将数据库的数据显示到网页页面中。

我们做一个纯PHP文件,命名doshowUserList.php,文件中代码如下:

<?phpheader("Content-Type:text/html;charset=utf-8");  include_once "mysql.php";     // 为了便于后期操作,我们将绑定数据库的代码单独写在另一个PHP文件中,通过导入的方式引入。$sql = <<<sql        // 准备SQL语句select * from `user`;
sql;$res = mysqli_query($conn, $sql);   // 执行SQL语句$arr=[];while($row=mysqli_fetch_assoc($res)){$arr[]=$row;}$json = json_encode($arr);echo $json;mysqli_free_result($res);mysqli_close($conn);

PHP连接数据库 的PHP文件,命名为mysql.php,代码如下:

<?phpheader("Content-Type:text/html;charset=utf-8");define("HOST", "127.0.0.1");define("USERNAME", "root");define("PASSWOED", "");define("DBNAME", "mydatabase");define("CHARSET", "utf8");
  // 连接数据库的同时,直接检测数据库连接是否成功 
$conn = @mysqli_connect(HOST, USERNAME, PASSWOED, DBNAME) or die("数据库连接失败!<span style='color:red;'>".mysqli_connect_error()."</span>");   // 设置字符集编码 @mysqli_set_charset($conn, CHARSET) or die("字符集编码设置失败!");

后台的PHP文件写好以后我们需要在前台声明一个函数 getData(),在函数体内使用ajax引入doShowUserList.php,前台JS代码如下:

<script src="js/jquery-3.1.1.js" type="text/javascript"></script>
<script type="text/javascript">$(function(){     // 在文档DOM加载完后,就自动获取一遍数据   getData();});// 获取数据  html中显示tbody内容的代码 采用ES6的反引号``可以直接在``中按照H5的形式写代码,比拼串的写法更简洁、更容易看function getData(){$.post("admin/doShowUserList.php",function(data){var html = ``;for (var i = 0; i < data.length; i++) {var user =    data[i];html += `<tr>                                           <td>${user.id}</td><td>${user.name}</td><td>${user.pwd}</td><td>${user.trueName}</td><td align = "center"><a οnclick="delUser(${user.id})" href="">删除</a></td></tr>
                            `;    }$("#table tbody").html(html);},"json");}
</script>

获取数据功能实现了,接下来我们实现增加数据的功能,按照上面的套路,我们首先新建一个PHP文件,命名为doAddUser.php,代码如下:

<?phpheader("Content-Type:text/html;charset=utf-8");include_once 'mysql.php';// $_POST 取到前台对象user 的键名
$name = $_POST["username"];$pwd = $_POST["pwd"];$trueName = $_POST["trueName"];$sql = <<<sql      insert into `user`       values(null,"{$name}","{$pwd}","{$trueName}");
sql;$isOk = mysqli_query($conn, $sql);if($isOk){echo "true";}else{echo "false";}

在前台声明一个函数addUser() ,在函数体内使用ajax引入doAddUser.php,前台JS代码如下:

// 新增数据            function addUser(){if($("input[name = 'username']").val()== "" || $("input[name = 'pwd']").val()== "" || $("input[name = 'truename']").val()== ""){alert("新增不可为空!请确认!");return;                }var user = {                "username" : $("input[name='username']").val(),"pwd" : $("input[name='pwd']").val(),"trueName" : $("input[name='truename']").val(),}$.post("admin/doAddUser.php",user,function(data){if (data == "false") {alert("新增用户失败!")}     getData();        $("input[name='username']").val("");$("input[name='pwd']").val("");$("input[name='truename']").val("");});}

最后就是删除功能了,套路同上,新建一个doDelUse.php,在前台声明一个函数delUser();  代码分别如下显示:

<?phpheader("Content-Type:textml;charset=utf-8");include_once "mysql.php";$id=$_POST["id"];$sql = <<<sqldelete from `user` where id = {$id};
sql;$isOk = mysqli_query($conn, $sql);if($isOk){echo "true";}else{echo "false";}

// 删除数据        function delUser(id){$.post("admin/doDelUser.php",{"id":id},function(data){if (data == "true") {alert("删除成功!")} else{alert("删除失败!")                    }            getData();                });}

最终,效果如下:

数据库中的数据:

转载于:https://www.cnblogs.com/Tracey-1023/p/7819225.html

PHP实现前台页面与MySQL的数据绑定、同步更新相关推荐

  1. 数据库修改后 前台同步更新 php,PHP实现前台页面与MySQL的数据绑定、同步更新...

    今天我来给大家介绍一个PHP-MySQL的小项目. 使用 PHP和前台Ajax 实现在前台对MySQL数据库中数据的增.删等操作语句功能. 如果有问题,欢迎拍砖~ 有不懂的地方,提出来咱们一起探讨~ ...

  2. layui实现前台页面和后台数据库的同步修改和删除操作

    首先来看看展示效果吧: 如下图,点击编辑按钮,弹出修改信息的框,将信息修改后,点击确定按钮,实现后台数据库和前台页面同时修改成我们在框内重新写的值: 修改功能的前后台代码如下 : 前台页面:Index ...

  3. mysql数据没有同步更新_MySQL数据库主从没有同步的两种解决方案

    MySQL数据库主从没有同步的两种解决方案 发布时间:2020-05-13 13:54:57 来源:亿速云 阅读:190 作者:三月 栏目:数据库 下文主要给大家带来MySQL数据库主从没有同步的两种 ...

  4. mysql数据没有同步更新_解决MySQL的主从数据库没有同步的两种方法

    问题 今天发现Mysql的主从数据库没有同步 先上Master库: mysql>show processlist; 查看下进程是否Sleep太多.发现很正常. show master statu ...

  5. 【SpringBoot】65、SpringBoot整合Canal+RabbitMQ监听MySQL实现数据同步更新Redis缓存

    canal 简介 早期阿里巴巴因为杭州和美国双机房部署,存在跨机房同步的业务需求,实现方式主要是基于业务 trigger 获取增量变更.从 2010 年开始,业务逐步尝试数据库日志解析获取增量变更进行 ...

  6. mysql 同步更新_MySQL slave 不能同步更新

    MySQL slave 不能同步更新 mysql slave server 上进程停止   重启后 不接收 master上的更新 mysql>show slave status\G; ***** ...

  7. 用php+mysql+ajax实现淘宝客服或阿里旺旺聊天功能 之 前台页面

    首先来看一下我已经实现的效果图: 消费者页面:(本篇随笔) (1)会显示店主的头像 (2)当前用户发送信息显示在右侧,接受的信息,显示在左侧 店主或客服页面:(下一篇随笔) (1)在左侧有一个列表 , ...

  8. Node.js Express博客项目实战 之 前台页面数据的显示

    前台页面数据通过连接数据库信息将数数据显示在页面上: 最终实现的效果: 前台的路由: 1 // 导入express 2 3 let express = require("express&qu ...

  9. php伪静态网前台页面,如何让Discuz门户频道页支持伪静态

    Discuz是一款功能很强大的php+mysql的论坛cms,其界面,安全性,功能都得到广大用户的一致好评.Discuz的门户功能很不错,它摆脱了单一的论坛模式,是网站看起来更加的完整.可是,门户有个 ...

最新文章

  1. ArrayList原理分析(重点在于扩容)
  2. TNF诱导的关节破坏由IL-1介导
  3. SQL Server 2008概述(一)
  4. 对计算机描述错误的是什么意思,下列对计算机特点的描述中错误的是:________。...
  5. 推荐 7 个学习 TypeScript 的宝库,2021 是时候给自己加薪了!
  6. OpenCV场景重建
  7. 【 POJ - 3628 】Bookshelf 2(dfs 或 dp,0-1背包)
  8. python存文件代码_Python文件读写保存操作的示例代码
  9. 启动分区不存在,使用分区工具修正
  10. C语言运算优先级口诀
  11. PPT - 双屏幕情况下,如何设置 PPT 不在主屏幕显示问题?
  12. 使用Git在G码云上传项目及同步
  13. 想知道怎么在CAD制图里面测量多线段的长度就往这看!
  14. JVM之运行时栈帧的结构(基于《深入理解Java虚拟机》之第八章虚拟机字节码执行引擎)(上)
  15. 细胞CLE19多肽荧光成像牛血清白蛋白荧光猝灭量子点的制备
  16. 【01】什么是 APP?移动 APP 有几种类型?
  17. PandoraBox多拨
  18. 人事管理系统 v4.1.8(源码)
  19. 大数据对人们的好处_大数据给人们生活带来哪些好处?
  20. 系统集成项目管理工程师-第三章 信息系统集成专业技术知识

热门文章

  1. 在java中3.14156d表示_2006年9月计算机等级考试二级Java笔试真题
  2. 根据录入的计算公式计算_小规模纳税人增值税计算公式是什么,什么人能被称为小规模纳税人?- 理财技巧...
  3. python和c#哪个简单-最近学习 Python 的一些感触 (对比 C#)
  4. LeetCode 231. 2的幂
  5. java arraylist 常用方法_分享ArrayList中的几个常用方法的源码
  6. java 隐藏了什么_JAVA程序中封装与隐藏是什么意思
  7. 电脑的发展史_互联网发展史 硅谷传奇之 IBM
  8. 循环发ajax请求,在循环中发送jquery ajax请求
  9. 485串口光纤转换器产品介绍
  10. 如何从使用环境上区别光纤收发器?