如何在PHP中将数据从一个MySQL表导出到另一个表?

时间:2019-07-03 16:48:10

标签: php mysql data-transfer data-export

基本上,我有一个客户表和一个潜在客户的潜在客户列表,一旦完成,我需要将这些潜在客户转移给客户,并使用导出按钮将其从原始表中删除。

我已经尝试了select from CData ......insert into leadlist之类的几种可能的方法,但是没有用

我的leadselect.php:

$(document).on('click', '.export', function(){
        var user_id = $(this).attr("id");
        if(confirm("Are you sure you want to export this?"))
        {
            $.ajax({
                url:"export.php",
                method:"POST",
                data:{user_id:user_id},
            success:function(data)   

我的export.php:

 <<?php

include('db.php');
include("function.php");

insert into leadlist
  select * from CData
 ?

按钮定义为

$sub_array[] = '<button type="button" name="export" id="'.$row["id"].'" class="btn btn-warning btn-xs export">Export</button>';

我的预期结果是将我选择的数据行导出到潜在客户列表并删除。

能否请您告诉我如何满足此要求?

1 个答案:

答案 0 :(得分:-2)

您需要在查询中使用$_POST['user_id']来插入和删除该用户的相应行。

在使用参数时,使用准备好的语句来防止SQL注入。

$insert_stmt = $conn->prepare("INSERT INTO leadlist SELECT * FROM CData WHERE user_id = ?") or die($conn->error);
$insert_stmt->bind_param("i", $_POST['user_id']);
$insert_stmt->execute() or die($insert_stmt->error);
$delete_stmt = $conn->prepare("DELETE FROM CData WHERE user_id = ?") or die($conn->error);
$delete_stmt->bind_param("i", $_POST['user_id']);
$delete_stmt->execute() or die($delete_stmt->error);

将查询中的user_id替换为表中包含用户ID的列的实际名称。

DEMO