问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

怎样用php实现两个mysql数据库的同步

发布网友 发布时间:2022-04-29 18:04

我来回答

4个回答

懂视网 时间:2022-04-10 12:21

使用 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,文件中代码如下:

<?php
 
 header("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,代码如下:

<?php
 
 header("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 onclick="delUser(${user.id})" href="">删除</a> </td> </tr> `; } $("#table tbody").html(html); },"json"); } </script>

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

<?php
 header("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();  代码分别如下显示:

<?php
 
 header("Content-Type:textml;charset=utf-8");
 
 include_once "mysql.php";
 
 $id=$_POST["id"];
 
 $sql = <<<sql
 delete 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();  
  });
 
  }
  

最终,效果如下:

技术分享

数据库中的数据:

技术分享

 

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

标签:导入   inpu   3.1   content   通过   black   javascrip   准备   效果   

热心网友 时间:2022-04-10 09:29

使用程序无法实现这种功能,因为无法保证事务的一致性,比如:A数据库中的a表复制到B数据库中的a表的过程中,A数据库中的a表的一条记录被删除,这样就无法实现数据的一致性!正确的做法是使用MySQL复制的功能!很简单,只需要几步配置即可!

热心网友 时间:2022-04-10 10:47

劝要报广州传智PHP基础班+就业班的,如果一点基础没有还是别去报了,以免浪费钱。本人亲身经历,各位如果有什么要问可以找我!我现在正在上广州传智8月15日开的基础班~

热心网友 时间:2022-04-10 12:21

这个有意思,可以一个用手机网站,一个用电脑网站,肯定比wap强吧
教你怎样在两台MySQL数据库间实现同步_MySQL

1. 安装配置 两台服务器,分别安装好MySQL,都安装在 /usr/local/MySQL 目录下(安装步骤省略,请参考相关文档),两台服务器的IP分别是192.168.0.1和192.168.0.2,我们把192.168.0.1作为master数据库,把192.168.0.2作为slave服务器,我们采用单向同步的方式,就是master的数据是主的数据,然...

怎样用php实现两个mysql数据库的同步

使用程序无法实现这种功能,因为无法保证事务的一致性,比如:A数据库中的a表复制到B数据库中的a表的过程中,A数据库中的a表的一条记录被删除,这样就无法实现数据的一致性!正确的做法是使用MySQL复制的功能!很简单,只需要几步配置即可!

php如何实现两台服务器数据库同步问题 - 技术问答

基于数据库 Log 日志分析可以实现,网上搜一下 CDC 数据同步。。不过你也可以尝试下 cloud.tapdata.net , 一个在线的数据同步工具,支持一次性全量同步,也支持实时的增量同步。

怎么样配置thinkphp 与本地mysql和sql server同时连接俩个数据库

thinkphp 同时连接两个数据库的配置方法如下:1、在Db.class.php脚本文件里面的类增加一个魔术方法__get(),写法如下:public function __get($propertyName){ return $this-&gt;$propertyName;}这个方法是用来访问类中protected $config成员属性用的。有的人可能会说,直接把protected改成public岂不是更...

mysql数据库同步问题

一类是文件,比如HTML,ASP,PHP等网页文件,或者RAR,ZIP,RM,AVI等可下载文件!要实现他们的同步很简单,用FTP同步软件就可以了!至于哪几个我会在后面做详细介绍.一类是数据库数据文件,比如MySQL,SQLServer等等!数据库同步的方法也很多,最简单的办法只是将数据库目录同步一下就OK了!在后面我也会做详细讲解!3.网站文件...

PHP的配对利器mysqlandPHP的完美结合mysqland

mysql_close($con);?&gt; 在这个例子中,我们使用mysql_connect()函数建立一个到MySQL服务器的连接,允许我们在之后的PHP代码中与数据库交互。然后我们使用mysql_select_db()函数选择要使用的数据库。接下来,我们使用mysql_query()函数向MySQL服务器发送SQL查询,从table_name表中选择所有数据。对于查询结果...

(php)mysql如何把一个数据库里的表导入另一个数据库

//选择要导入的数据库 mysql_select_db('act2',$conn);//设置操作数据库编码格式 mysql_query("set names utf8");//构造插入sql语句 sql2="INSERT INTO user(user_name,phone) VALUES";//循环记录集,插入新数据库的表中 foreach ($records as $ite){ //构造插入值字符串 valuestr = "...

php mysql 数据库查询的结果如何拼接

在满足上面条件下,如果,两种的记录顺序不能完全一致的话,就只能通过遍历来添加数据。此时,第2个sql语句里,要增加 与 前面SQL之间的关联字段,比如:username,然后,再通过php代码遍历数组,将两者合并。如果两者顺序、数量都一致,可以考虑使用array_merge_recursive()函数与array_merge()函数。

php如何连接mysqlphp如何连接mysql数据库

PHP7连接mysql数据库的方法 1。使用mysql_connect方法,PHP7会报告一个致命错误。conn=MySQL_connect(本地主机,雪燕香,雪燕香);致命错误:未捕获错误:调用/Users/xueyanxiang/work/test/Xue.PHP中未定义的函数MySQL_connect():31堆栈跟踪:#0/Users/xueyanxiang/work/test/Xue.PHP(119):Xue-run()#1...

...PHP连接phpmyadmin数据库(php怎么连接mysql数据库)

通过PHP创建MYSQL数据库 conn = mysql_connect("localhost","root","password")or die("无法连接数据库");mysql_create_db("dwww")or die("无法创建数据库");sqlstr = "create database other_dwww";--- 创建mysql的表 conn = mysql_connect("localhost","root","password")or die("无法...

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
邯郸哪些酒店有浴缸 关于选择快递公司 问一下,不到1公斤的东西寄到1500公里外要多少钱。什么快递便宜点。 家电科普 电热水器安全使用那些事儿 教你如何安全使用家电? 水果有农药残留怎么办 荣耀之光手游下载如何下载 自考问答:心理障碍常见的判别标准有几种 王者荣耀荣耀之光头像框获得方法一览[图]-手游攻略-游戏鸟手游网_百度... ...七八次体检就是最近两个月做了两次 明天又要体检入职 做那个胸... 【求助】在win7 32位系统下可以搭建PHP开发环境吗? 哈尔滨php入门 大学城附近有网站培训基础班吗... PHP基础班培训 PHP是不是最好的语言 源代码教育的PHP培训适合零基础的吗? php基础班哪里有? 华夏银行熊猫卡值得养吗 电流互感器1000/5怎么接5A的热过载保护器上 谢谢大神指教12 压机过载保护器接电源火线还是零线! LOL的游戏文件有哪些是可以删的 电流过载保护开关 怎么安装使用 华夏熊猫足球卡金卡额度多少 英雄联盟海克斯合成科技获得宝箱皮肤怎么用 380v的交流接触器上接过载接电器怎么接法? 交流接触器和电动机断相过载短路保护器怎么接线 英雄联盟lol在哪个文件夹谁知道??? 英雄联盟手游成就积分会没吗 车载绞盘机过载保护怎么安装? LOL游戏文件位置? 手动复位电流过载保护开关怎么接线方法 iphone6s锁屏后左下角有虎牙图标怎么回事 重庆神奈川日语的费用谁知道的 考研 英语基础非常差 我该报哪个班 禁止做广告 现在各种极端天气频繁,高温热浪袭击,这到底是什么原因导致的? 海洋热浪数量增加54%,原因是什么? 今年出现的反常的天气现象的原因是什么? 全球每年气温屡破纪录,究竟是什么原因导致气候变暖的? 第五十千上吉苏东坡劝民 今年极端天气频繁,你知道原因吗? 苏东波劝民 苏东坡劝民 牛宏不听射牛是什么意思 世界气象组织预测,今年夏天将出现破纪录高温,有什么科学依据? 签诗 第五十 苏东坡 劝民 “人说今年胜去年 也须步步要周旋 一家和气多生福 萋菲谗言莫听偏” 求解事业 气候问题 蒲荐松床 苏轼是什么意思啊 根据科学家观测,全球气候正在变暖,造成气候变暖的主要原因是什么? 苏轼在彭城的佚事 苏东坡在海南的故事? 今年冬天为什么这么暖? 请帮我解签,急~!问姻缘。第五十首签 戊癸 上平 蘇东坡劝民 全球变暖已成为了事实,为什么今年的冬天却格外寒冷? 500字的小短文谢谢了,大神帮忙啊