PHP/MySQL通过“加载更多”按钮将数据分块从一个表复制到另一个表

PHP/MySQL通过“加载更多”按钮将数据分块从一个表复制到另一个表,php,mysql,Php,Mysql,我相信他们的方法可能更好。。。是否可以使用“加载更多”按钮将数据行块中的项目从表1(列)复制到表2(列) 我该怎么做?我在哪里可以找到这方面的信息?谢谢。我希望这会对你有所帮助。您可以在php中实现它以加载更多操作 每次点击更多按钮后,在mysql查询中更改偏移量和限制 INSERT INTO table2 SELECT * FROM table1 LIMIT 0, 25; load more... INSERT INTO table2 SELECT * FROM table1 LIMIT

我相信他们的方法可能更好。。。是否可以使用“加载更多”按钮将数据行块中的项目从
表1(列)
复制到
表2(列)


我该怎么做?我在哪里可以找到这方面的信息?谢谢。

我希望这会对你有所帮助。您可以在php中实现它以加载更多操作

每次点击更多按钮后,在mysql查询中更改偏移量和限制

INSERT INTO table2 SELECT * FROM table1 LIMIT 0, 25;

load more...

INSERT INTO table2 SELECT * FROM table1 LIMIT 25, 25;

load more...

INSERT INTO table2 SELECT * FROM table1 LIMIT 50, 25;

逗号代码

1.只需在page1.php中复制并粘贴以下代码

<div id='message'></div>

<a href='#' id='LoadMore' >Load More</a>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"
    type="text/javascript"></script>

<script>
$(function() {
    var page = 1;
    $("#LoadMore").click(function(){
        $.ajax({
            type:"GET",
            url:"page2.php",
            data:{page:page},
            success: function(response) {
                $("#message").append(response); 
                page++;
            }
        });
    }); 
});
</script>

$(函数(){
var-page=1;
$(“#加载更多”)。单击(函数(){
$.ajax({
键入:“获取”,
url:“page2.php”,
数据:{page:page},
成功:功能(响应){
$(“#消息”)。追加(应答);
page++;
}
});
}); 
});
2.在page2.php中复制以下代码

并在前两行中更改mysql\u服务器、mysql\u用户、mysql\u密码、数据库\u名称参数

<?php
//set argument as your mysql server
$connect = mysql_connect("mysql_server","mysql_user","mysql_password");
mysql_select_db("database_name",$connect);

$page = isset($_GET["page"]) ? $_GET["page"] : 1;
$limit = 25;
$offset = ($page - 1) * $limit;

$sql = "INSERT INTO table2 SELECT * FROM table1 limit $offset, $limit";
mysql_query($sql);
$rows = mysql_affected_rows();
echo "$rows rows added to table2 from table1<br>";
?>

3.在浏览器中运行page1.php。。。并将数据加载到表2中

现在显示表2中的数据,而不按要求刷新页面(用户2714387在评论中说)

4.在page3.php中复制并粘贴以下代码

<table width="300" border="1" id='data_grid'></table>

<a href='javascript://' id='LoadMore' >Load More</a>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"
    type="text/javascript"></script>

<script>
$(function() {
    var page = 1;
    $("#LoadMore").click(function(){
        $.ajax({
            type:"GET",
            url:"page4.php",
            data:{page:page},
            success: function(response) {
                $("#data_grid").append(response); 
                page++;
            }
        });
    }); 
});
</script>

$(函数(){
var-page=1;
$(“#加载更多”)。单击(函数(){
$.ajax({
键入:“获取”,
url:“page4.php”,
数据:{page:page},
成功:功能(响应){
$(“#数据网格”)。追加(响应);
page++;
}
});
}); 
});
4.在page4.php中复制以下代码

<?php
    //set argument as your mysql server
    $connect = mysql_connect("mysql_server","mysql_user","mysql_password");
    mysql_select_db("database_name",$connect);

    $page = isset($_GET["page"]) ? $_GET["page"] : 1;
    $limit = 25;
    $offset = ($page - 1) * $limit;

    $sql = "SELECT * FROM table2 limit $offset, $limit";
    $result = mysql_query($sql);
    $numRows = mysql_num_rows($result);
    if($numRows>0) {
        while($row = mysql_fetch_array($result)) {
            //get field data and set to the following row
            echo "<tr><td>field 1</td><td>field 2</td><td>field 3</td></tr>";
                    //edit row as you table data

        }
    } else {
        echo "<tr><td colspan='3'> No more data </td></tr>";
    }
    exit;
?>

您始终可以选择一些数据并将其插入另一个表中,这不是一个好的解决方案,但您可以。请您提供更多关于您尝试做什么的详细信息,并给出一些示例代码,无论您到目前为止尝试了什么。不要使用
mysql\u*
函数,因为它们已被弃用。改为使用PDO或
mysqli
。@salim当更新新表时,我如何更新显示整个表而不重新加载页面的列表?@user2714387:answer根据您的要求进行编辑(当更新新表时,我如何更新显示整个表而不重新加载页面的列表)@萨利姆:你能推荐兼容的代码,在功能性拖放排名系统中列出table2的元素吗?尝试了Jquery,但ajax/libs/Jquery/1/Jquery.min.js行终止了该拖放功能。@user2714387:请创建一个新问题,尽可能清楚地给出表结构和要求,因为不需要编辑更多此答案,它将违反此问题的答案。