Php 将mysqli中的一行移动到另一个表中

Php 将mysqli中的一行移动到另一个表中,php,mysqli,Php,Mysqli,我有两个表,一个名为Contacts,一个名为Repairs 这是修理的东西 id name phone address budget due 在contacts中,我有以下列 id name phone address 有没有办法为某些行同步这两个表 name phone address 我正在寻找一种方法来添加一个按钮,将移动和valadate,以确保它还没有在修复的行上完成 name phone address 我不想删除修复中的行 到目前为止,按钮的代码是 <a href=

我有两个表,一个名为Contacts,一个名为Repairs

这是修理的东西

id
name
phone
address
budget
due
在contacts中,我有以下列

id
name
phone
address
有没有办法为某些行同步这两个表

name
phone
address
我正在寻找一种方法来添加一个按钮,将移动和valadate,以确保它还没有在修复的行上完成

name
phone
address
我不想删除修复中的行

到目前为止,按钮的代码是

<a href="add_to_contacts.php?id#<?php echo$id; ?>Add to Contacts</a>

但是我不知道在add_to_contacts.php中应该包含什么

我想应该是这样的

    <?php    
    include 'db_connect.php';

function move_row($id = 0) {
    $query = $this->db->query('select * from repairs where id = ' . $id);
    $row = $query->row_array();
    $this->db->insert('contacts',$name);
}
?>

请不要让最后一点代码是我到目前为止得到的,它可能在一百万英里之外,但我能说的是我已经尝试过了

这里应该使用什么代码

更新

这是新代码

<?php    
//include database connection
include 'db_connect.php';



$query = "INSERT INTO contacts (name, phone, address) SELECT name, phone, address FROM repair_jobs
                    where id='".$mysqli->real_escape_string($_REQUEST['id'])."'
                    limit 0,1";

                    ?>
您可以使用

像这样:

<?php    
//include database connection
include 'db_connect.php';

$query = "INSERT INTO contacts (name, phone, address) 
          SELECT name, phone, address FROM repair_jobs 
          WHERE id='".$mysqli->real_escape_string($_REQUEST['id'])."' 
          LIMIT 0,1";

$mysqli->query($query);
?>

真的,这应该是一个注释-但有点长

这个问题根本上是有缺陷的

这里的问题是您的数据模式是错误的。您不应该在两个不同的表中保存相同的数据-这就是为什么它被称为关系数据库。修理表应包括:

id
budget
due
contact_id
其中contact_id指的是contacts表中的一条记录


在您的问题中,您没有提供如何匹配要复制到联系人表中的数据以避免创建重复记录的任何详细信息。

这是什么
$action=INSERT into cotacts SELECT*FROM repairs事情?我在网上做了一些调查,就像我说的,在寻求帮助或建议之前我试着自己做。除此之外,我认为@YourCommonSense是想告诉你,这个字符串不是一个有效的PHP字符串,因为它不仅没有被引用。这是正确方法的一部分,无论多么不完整,代码中没有使用过。你介意向我解释一下吗?@YourCommonSense如何?@YourCommonSense这到底是什么意思?关于
id=$id
?对吗?对然后运行查询。@RickNash您的
$mysqli->query($query)在哪里?你必须运行查询这是非常正确的。我还在试着把这些东西捡起来。你的答案很好,但我如何才能做到这一点。并显示与维修相关的数据?请在相关信息上发布一个链接,因为我非常感兴趣,或者只是在谷歌中键入神奇的文字。
id
budget
due
contact_id