Untuk membaca data daripada pangkalan data menggunakan HTML, terdapat beberapa kaedah: gunakan panggilan AJAX untuk mendapatkan semula data dengan cara yang lancar melalui komunikasi tak segerak untuk mewujudkan sambungan berterusan untuk pemindahan data masa nyata dan memformatkan respons sebagai JSON supaya penghuraian dan pemprosesan sebelah pelanggan yang mudah.
Membaca pangkalan data menggunakan HTML: Petua dan kaedah
Pengenalan
Dalam aplikasi web, membaca data daripada pangkalan data adalah tugas yang penting. Menggunakan HTML sebagai bahasa klien, kami boleh berinteraksi dengan pangkalan data dan memaparkan data secara dinamik. Artikel ini memperkenalkan beberapa teknik dan kaedah yang berkesan untuk membantu anda menggunakan HTML untuk membaca pangkalan data dengan berkesan.
panggilan AJAX
AJAX (JavaScript tak segerak dan XML) membolehkan anda berkomunikasi secara tak segerak dengan pelayan tanpa memuatkan semula keseluruhan halaman. Ini menjadikan pembacaan data daripada pangkalan data cekap dan lancar. Berikut ialah contoh kod yang membaca data menggunakan panggilan AJAX:
function getCustomers() { var xhr = new XMLHttpRequest(); xhr.open("GET", "get_customers.php"); xhr.onload = function() { if (xhr.status === 200) { var customers = JSON.parse(xhr.responseText); displayCustomers(customers); } else { alert("Error fetching customers."); } }; xhr.send(); }
Fungsi ini menghantar permintaan melalui panggilan AJAX ke fail get_customers.php
, yang mengambil semula data pelanggan daripada pangkalan data. Respons dikembalikan sebagai format JSON dan dihuraikan serta dipaparkan pada sisi klien. get_customers.php
文件发送请求,后者从数据库检索客户数据。响应作为 JSON 格式返回,并在客户端解析和显示。
Web Sockets
Web Sockets 是另一种实现实时通信的强大技术。它允许客户端与服务器建立持久连接,从而可以持续读取数据库数据。以下是用 WebSocket 读取数据库数据的示例代码:
var websocket = new WebSocket("ws://localhost:8080"); websocket.onopen = function() { websocket.send("get_customers"); }; websocket.onmessage = function(event) { var data = JSON.parse(event.data); if (data.type == "customers") { displayCustomers(data.customers); } };
此代码使用 WebSocket
对象连接到服务器,并发送一条消息以检索客户数据。服务器处理该请求并通过 WebSocket 连接持续发送数据。
使用 JSON 响应
无论使用 AJAX 还是 Web Sockets,使用 JSON 作为响应格式是一个明智的选择。JSON 是一种轻量级的文本格式,便于解析和处理客户端端。服务器端代码应将数据库数据转换为 JSON 对象,然后将其作为响应返回。
实战案例
任务:创建一个用户列表页面,该页面从数据库动态获取用户数据并显示。
步骤:
get_users.php
文件,该文件用于从数据库中获取用户数据并将其编码为 JSON:<?php $servername = "localhost"; $username = "root"; $password = ""; $dbname = "myDB"; // 创建连接 $conn = new mysqli($servername, $username, $password, $dbname); // 准备和执行查询 $sql = "SELECT * FROM users"; $result = $conn->query($sql); // 将结果编码为 JSON $users = array(); while ($row = $result->fetch_assoc()) { $users[] = $row; } echo json_encode($users); ?>
<script> function getUsers() { var xhr = new XMLHttpRequest(); xhr.open("GET", "get_users.php"); xhr.onload = function() { if (xhr.status === 200) { var users = JSON.parse(xhr.responseText); displayUsers(users); } else { alert("Error fetching users."); } }; xhr.send(); } </script> <body onload="getUsers()"> <div id="user-list"></div> </body>
displayUsers()
WebSocket
untuk menyambung ke pelayan dan menghantar mesej untuk mendapatkan semula data pelanggan. Pelayan mengendalikan permintaan dan terus menghantar data melalui sambungan WebSocket. 🎜🎜🎜Gunakan respons JSON 🎜🎜🎜 Sama ada menggunakan AJAX atau Soket Web, menggunakan JSON sebagai format respons adalah pilihan yang bijak. JSON ialah format teks ringan yang mudah dihuraikan dan diproses di sisi klien. Kod sebelah pelayan harus menukar data pangkalan data menjadi objek JSON dan mengembalikannya sebagai respons. 🎜🎜🎜Kes praktikal🎜🎜🎜🎜Tugas: 🎜Buat halaman senarai pengguna yang memperoleh data pengguna secara dinamik daripada pangkalan data dan memaparkannya. 🎜🎜🎜Langkah: 🎜🎜get_users.php
yang digunakan untuk mendapatkan data pengguna daripada pangkalan data dan mengekodkannya ke dalam JSON: 🎜🎜rrreeedisplayUsers() dalam kod halaman HTML> berfungsi untuk memaparkan data pengguna. 🎜🎜🎜Dengan mengikuti langkah ini, anda akan membuat halaman senarai pengguna yang menggunakan HTML untuk membaca data secara dinamik daripada pangkalan data. 🎜
Atas ialah kandungan terperinci . Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!