Maison >interface Web >tutoriel HTML >Une analyse approfondie de la façon dont HTML lit la base de données
HTML ne peut pas lire directement la base de données, mais cela peut être réalisé via JavaScript et AJAX. Les étapes comprennent l'établissement d'une connexion à la base de données, l'envoi d'une requête, le traitement de la réponse et la mise à jour de la page. Cet article fournit un exemple pratique d'utilisation de JavaScript, AJAX et PHP pour lire les données d'une base de données MySQL, montrant comment afficher dynamiquement les résultats d'une requête dans une page HTML. Cet exemple utilise XMLHttpRequest pour établir une connexion à la base de données, envoyer une requête et traiter la réponse, remplissant ainsi les données dans les éléments de la page et réalisant la fonction de lecture HTML de la base de données.
Analyse approfondie du HTML Comment lire la base de données
Avant-propos
Dans les applications Web modernes, la lecture de la base de données est cruciale, ce qui nous permet d'extraire les données de la base de données et de les afficher aux utilisateurs . HTML lui-même ne peut pas se connecter directement à une base de données, mais nous pouvons utiliser la technologie JavaScript et AJAX pour réaliser cette fonctionnalité. Cet article examine en profondeur la façon dont HTML lit une base de données via JavaScript et AJAX, et l'explique avec des exemples.
JavaScript et AJAX
JavaScript est un langage de script qui peut modifier dynamiquement le contenu et le comportement d'une page Web. AJAX (Asynchronous JavaScript and XML) est une technologie qui permet à JavaScript de communiquer avec le serveur sans recharger la page entière. En utilisant AJAX, nous pouvons récupérer les données de la base de données en arrière-plan, puis mettre à jour le contenu de la page.
Étapes
La lecture d'une base de données implique les étapes suivantes :
Cas pratique
Voici un exemple d'utilisation de HTML, JavaScript et AJAX pour lire une base de données MySQL :
HTML
<div id="data-container"></div> <script> // 获取数据容器元素 const dataContainer = document.getElementById("data-container"); // 数据库连接信息 const dbHost = "localhost"; const dbName = "mydb"; const dbUser = "root"; const dbPass = "root"; // 建立数据库连接 const conn = new XMLHttpRequest(); conn.open("GET", `php/connect_db.php?host=${dbHost}&name=${dbName}&user=${dbUser}&pass=${dbPass}`); conn.send(); // 监听数据库连接响应 conn.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { // 数据库连接成功,发送查询 const query = "SELECT * FROM users"; const queryRequest = new XMLHttpRequest(); queryRequest.open("POST", `php/query_db.php?query=${query}`); queryRequest.send(); // 监听查询响应 queryRequest.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { // 查询成功,获取响应 const data = JSON.parse(this.responseText); // 遍历数据并填充数据容器 for (let i = 0; i < data.length; i++) { dataContainer.appendChild(document.createElement("p")).textContent = `Name: ${data[i].name}, Age: ${data[i].age}`; } } }; } }; </script>
PHP (pour les connexions et requêtes de base de données)
connect_db.
<?php // 数据库连接信息 $dbHost = $_GET['host']; $dbName = $_GET['name']; $dbUser = $_GET['user']; $dbPass = $_GET['pass']; // 建立数据库连接 $conn = new mysqli($dbHost, $dbUser, $dbPass, $dbName); if ($conn->connect_error) { die("数据库连接失败: " . $conn->connect_error); }
query_db.php
<?php include 'connect_db.php'; // 获取查询字符串 $query = $_GET['query']; // 执行查询 $result = $conn->query($query); if (!$result) { die("查询失败: " . $conn->error); } // 将查询结果编码为 JSON 格式 $data = json_encode($result->fetch_all(MYSQLI_ASSOC)); // 返回 JSON 数据 echo $data;
Effect
Ouvrez le fichier HTML contenant le code ci-dessus dans votre navigateur, il interrogera automatiquement la base de données et obtiendra la réponse du script PHP en utilisant AJAX. Les données obtenues à partir de la base de données seront renseignées dans l'élément « data-container » et les résultats de la requête seront affichés sur la page en temps réel.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!