Mysql
 sql >> Baza danych >  >> RDS >> Mysql

PHP/MySQL kopiuje dane porcjami z jednej tabeli do drugiej za pomocą przycisku ładuj więcej

Mam nadzieję, że to Ci pomoże. Możesz zaimplementować go w php, aby załadować więcej akcji.

za każdym razem po kliknięciu przycisku więcej zmień offset i limit w zapytaniu 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;

....

....

Kompletny kod.

1. Po prostu skopiuj i wklej następujący kod w 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>

2. Skopiuj następujący kod w page2.php

i zmień mysql_server, mysql_user, mysql_password, database_name argument w pierwszych dwóch wierszach

<?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. Uruchom page1.php w przeglądarce... i załaduj dane do tabeli 2

Teraz pokazuje dane z tabeli 2 bez odświeżania strony zgodnie z wymaganiami (użytkownik 2714387 powiedział w komentarzu)

4. Skopiuj i wklej następujący kod w 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>

4. Skopiuj następujący kod w 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;
?>

6.Uruchom page4.php w przeglądarce




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. NodeJS Jak obsłużyć współbieżne żądania do MySQL

  2. Jak zmusić MySQL do przyjęcia 0 jako prawidłowej wartości automatycznego przyrostu?

  3. Aktualizacja za pomocą oświadczenia PDO

  4. MySQL :ERROR 1215 (HY000):Nie można dodać ograniczenia klucza obcego

  5. Nie można zatrzymać procesu mysql