Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Memuat data secara dinamis pada gulir div menggunakan php, mysql, jquery, dan ajax

Dalam tutorial ini saya akan menunjukkan kepada Anda bagaimana Anda dapat memuat data secara dinamis pada gulir div menggunakan php, mysql, jquery dan ajax atau Anda dapat mengatakan bahwa facebook menyukai paging, Kapan pun pengguna akan berada di bawah div atau halaman maka data baru akan dimuat secara instan.

Dalam contoh ini saya memiliki database negara dan saya perlu menampilkan semua daftar negara di dalam div, Jadi setiap kali pengguna menggulir div negara, daftar negara berikutnya akan dimuat.

Pertama-tama buat database negara.

CREATE TABLE IF NOT EXISTS `countries` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`sortname` varchar(3) NOT NULL,
`name` varchar(150) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=247 ;


Buat file php untuk membuat koneksi dengan database dan mengambil daftar negara sesuai batas.

<?php
$hostname = "localhost";
$username = "root";
$password = "root";
$dbname = "location";
$limitStart = $_POST['limitStart'];
$limitCount = 50; // Set how much data you have to fetch on each request
	if(isset($limitStart ) || !empty($limitStart)) {
	$con = mysqli_connect($hostname, $username, $password, $dbname);
	$query = "SELECT id, name FROM countries ORDER BY name limit $limitStart, $limitCount";
	$result = mysqli_query($con, $query);
	$res = array();
		while($resultSet = mysqli_fetch_assoc($result)) {
		$res[$resultSet['id']] = $resultSet['name'];
		}
	echo json_encode($res);
	}
?>




Sekarang buat file html dan masukkan beberapa css dan html

<style>
.country { height: 300px; overflow: auto; width: 500px; }
.loading { color: red; }
li {font-size:24px;}
#loading { display:none; color:red; font-size:30px; }
</style>
<div class="country">
    <ul id="results"></ul>
</div>
 <span id="loading">Loading Please wait...</span>





Setelah itu tulis jquery untuk mengirim request ke server pada div scroll

<script>
$(function() {
   loadResults(0);
    $('.country').scroll(function() {
      if($("#loading").css('display') == 'none') {
        if($(this).scrollTop() + $(this).innerHeight() >= $(this)[0].scrollHeight) {
           var limitStart = $("#results li").length;
           loadResults(limitStart); 
        }
      }
	}); 
 
function loadResults(limitStart) {
	$("#loading").show();
    $.ajax({
        url: "request.php",
        type: "post",
        dataType: "json",
        data: {
            limitStart: limitStart
        },
        success: function(data) {
               $.each(data, function(index, value) {
               $("#results").append("<li id='"+index+"'>"+value+"</li>");
             });
             $("#loading").hide();     
        }
    });
};
});
</script>

Sekarang file index.html terakhir Anda akan menjadi

index.html

<style>
.country { height: 300px; overflow: auto; width: 500px; }
.loading { color: red; }
li {font-size:24px;}
#loading { display:none; color:red; font-size:30px; }
</style>
<div class="country">
    <ul id="results"></ul>
</div>
 <span id="loading">Loading Please wait...</span>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script>
$(function() {
   loadResults(0);
    $('.country').scroll(function() {
      if($("#loading").css('display') == 'none') {
        if($(this).scrollTop() + $(this).innerHeight() >= $(this)[0].scrollHeight) {
           var limitStart = $("#results li").length;
           loadResults(limitStart); 
        }
      }
	}); 
 
function loadResults(limitStart) {
	$("#loading").show();
    $.ajax({
        url: "request.php",
        type: "post",
        dataType: "json",
        data: {
            limitStart: limitStart
        },
        success: function(data) {
               $.each(data, function(index, value) {
               $("#results").append("<li id='"+index+"'>"+value+"</li>");
             });
             $("#loading").hide();     
        }
    });
};
});
</script>

Lihat demo langsung dan unduh kode sumber.

DEMO UNDUH

Jika Anda menyukai posting ini, jangan lupa untuk berlangganan buku catatan publik saya untuk hal-hal yang lebih bermanfaat


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Python Dari Awal:Buat Situs Web Dinamis

  2. Pernyataan kasus di MySQL

  3. TANGGAL() Contoh – MySQL

  4. Tampilkan Kueri SQL Lengkap di Tampilkan Daftar Proses MySQL

  5. String pesanan SQL sebagai nomor