Hướng dẫn update data without refresh page in php - cập nhật dữ liệu mà không cần làm mới trang trong php

Giả sử bạn muốn hiển thị một số nội dung nguồn cấp dữ liệu trực tiếp (giả sử livefeed.txt) trên trang web của bạn mà không cần làm mới trang thì ví dụ đơn giản hóa sau đây là dành cho bạn.live feed content (say livefeed.txt) on you web page without any page refresh then the following simplified example is for you.

Trong tệp HTML dưới đây, dữ liệu trực tiếp được cập nhật trên phần tử div của ID "Livingata"html file, the live data gets updated on the div element of id "liveData"

index.html




    Live Update
    
    

Loading Data...

Dưới đây autoupdate.js đọc dữ liệu trực tiếp bằng cách sử dụng đối tượng XMLHTTPREQUEST và cập nhật phần tử HTML Div trên 1 giây. Tôi đã đưa ra ý kiến ​​về hầu hết các phần của mã để hiểu rõ hơn.autoUpdate.js reads the live data using XMLHttpRequest object and updates the html div element on every 1 second. I have given comments on most part of the code for better understanding.

autoUpdate.js

window.addEventListener('load', function()
{
    var xhr = null;

    getXmlHttpRequestObject = function()
    {
        if(!xhr)
        {               
            // Create a new XMLHttpRequest object 
            xhr = new XMLHttpRequest();
        }
        return xhr;
    };

    updateLiveData = function()
    {
        var now = new Date();
        // Date string is appended as a query with live data 
        // for not to use the cached version 
        var url = 'livefeed.txt?' + now.getTime();
        xhr = getXmlHttpRequestObject();
        xhr.onreadystatechange = evenHandler;
        // asynchronous requests
        xhr.open("GET", url, true);
        // Send the request over the network
        xhr.send(null);
    };

    updateLiveData();

    function evenHandler()
    {
        // Check response is ready or not
        if(xhr.readyState == 4 && xhr.status == 200)
        {
            dataDiv = document.getElementById('liveData');
            // Set current data text
            dataDiv.innerHTML = xhr.responseText;
            // Update the live data every 1 sec
            setTimeout(updateLiveData(), 1000);
        }
    }
});

Đối với mục đích thử nghiệm: Chỉ cần viết một số điều trong LiveFeed.txt - bạn sẽ được cập nhật tương tự trong index.html mà không cần làm mới.

livefeed.txt

Hello
World
blah..
blah..

Lưu ý: Bạn cần chạy mã trên trên máy chủ web (ví dụ: http: // localhost: 1234/index.html) không phải là tệp HTML của máy khách (ví dụ: tệp: /// c:/index.html). You need to run the above code on the web server (ex: http://localhost:1234/index.html) not as a client html file (ex: file:///C:/index.html).

Được gửi bởi Argie vào thứ Năm, ngày 28 tháng 1 năm 2021 - 11:46.

Hướng dẫn update data without refresh page in php - cập nhật dữ liệu mà không cần làm mới trang trong php

Xin chào mọi người, tính năng của hướng dẫn này là nó cho phép bạn lưu dữ liệu vào cơ sở dữ liệu và hiển thị dữ liệu từ cơ sở dữ liệu mà không làm mới trang. Tôi đã sử dụng AJAX và PHP trong hướng dẫn này. Mục tiêu của chúng tôi cho hướng dẫn này là tạo một ứng dụng web đơn giản có hình thức đơn giản sẽ dẫn đến việc tự động tải dữ liệu sau khi phản hồi thành công của việc lưu dữ liệu. Để bắt đầu mã hóa, hãy làm theo các bước được cung cấp dưới đây.

Requirements:

  • Tải xuống và cài đặt bất kỳ máy chủ web cục bộ nào như XAMPP/WAMP.

Bước 1: Tạo cơ sở dữ liệu của chúng tôi

Để tạo cơ sở dữ liệu:

  1. Nếu bạn đang sử dụng XAMPP/WAMP, hãy mở bảng điều khiển của XAMPP/WAMP và Strat "Apache" và "MySQL"."Apache" and "MySQL".
  2. Mở phpmyadmin trong trình duyệt web. [http: // localhost/phpmyadmin]
  3. Tạo một cơ sở dữ liệu mới đặt tên "AJAXPHP".
  4. Sau khi tạo tên cơ sở dữ liệu, nhấp vào SQL và dán mã bên dưới.

Bước 2: Tạo biểu mẫu của chúng tôi

Trong đó, chúng tôi sẽ tạo biểu mẫu của chúng tôi hiển thị dữ liệu từ cơ sở dữ liệu. Để tạo biểu mẫu của chúng tôi, hãy sao chép mã bên dưới và lưu nó dưới dạng "index.php"."index.php".

  1. Save and load data without leaving the page using PHP and Ajax

  • $("#responds").append(response);

  • $('#contentText').val("")

  • },

  • error:function (xhr, ajaxOptions, thrownError){

  • alert(thrownError);

  • }

  • });

  • });

  • });

  • Save and Load Data without leaving the page using PHP and Ajax




    • //include db configuration file

    • include_once("config.php");

    • //MySQL query

    • $Result = mysqli_query($connecDB,"SELECT id,content FROM add_delete_record");

    • //get all records from add_delete_record table

    • {

    • echo '

    • ].'" class="item-list">';

    • echo $row["content"].'

    • ';

    • }

    • //close db connection

    • ?>

  • Bước 3: Tạo kết nối cơ sở dữ liệu của chúng tôi

    Sao chép mã dưới đây và lưu nó dưới dạng "config.php"."config.php".

    1. $username = "root"; //mysql username

    2. $password = ""; //mysql password

    3. $hostname = "localhost"; //hostname

    4. $databasename = 'ajaxphp'; //databasename

    5. $connecDB = mysqli_connect($hostname, $username, $password, $databasename)or die('Could not connect to the database');

    6. ?>

    Bước 4: Viết tập lệnh lưu của chúng tôi

    Trong bước này, chúng tôi viết mã lưu dữ liệu mà không cần tải trang. Sao chép mã dưới đây và lưu nó dưới dạng "Phản hồi.php"."response.php".

    1. //include db configuration file

    2. include_once("config.php");

    3. if(isset($_POST["content_txt"]) && strlen($_POST["content_txt"])>0)

    4. {

    5. $contentToSave = filter_var($_POST["content_txt"],FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_HIGH);

    6. if(mysqli_query($connecDB,"INSERT INTO add_delete_record(content) VALUES('$contentToSave')"))

    7. {

    8. echo '

    9. ';

    10. echo $contentToSave.'

    11. ';

    12. }

    13. }

    14. ?>

    Đó là tất cả những gì bạn đã tạo thành công hệ thống của mình để lưu và hiển thị dữ liệu từ cơ sở dữ liệu mà không làm mới trang. Cảm ơn bạn đã luôn theo dõi và đưa ra những bình luận tích cực cho các hướng dẫn của tôi.

    • 4514 lượt xem

    Php có thể cập nhật mà không cần làm mới không?

    Điều này thường đạt được với một kỹ thuật gọi là Ajax.Kỹ thuật này tải dữ liệu không đồng bộ (trong nền) để nó có thể cập nhật nội dung của bạn mà không cần tải lại trang.Cách dễ nhất để thực hiện AJAX là với phương thức JQuery Load ().. This technique loads data asynchronously (in the background) so it can update your content without needing to reload the page. The easiest way to implement AJAX is with the jQuery load() method.

    Làm cách nào để lấy dữ liệu từ máy chủ mà không cần trang làm mới?

    1 câu trả lời..
    Sử dụng Ajax một lần để gửi tin nhắn ..
    Thực hiện nhiều cuộc gọi AJAX lặp đi lặp lại cứ sau mỗi giây để hỏi máy chủ nếu có một thông báo mới để nhận.Các tin nhắn cần nhận phải được lưu trữ trên máy chủ để chúng có thể được gửi khi trang yêu cầu các tin nhắn mới.ví dụ..