HTML5 是一种用于构建网页的标记语言,而 MySQL 是一种流行的关系型数据库管理系统(RDBMS)。HTML5 本身并不直接支持与数据库交互,但可以通过 JavaScript 和服务器端脚本(如 PHP、Node.js 等)来实现与 MySQL 数据库的通信。
原因:JavaScript 是客户端脚本语言,无法直接访问服务器上的数据库。
解决方法:
示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Query MySQL Database</title>
</head>
<body>
<h1>Query MySQL Database</h1>
<button onclick="queryDatabase()">Query</button>
<div id="result"></div>
<script>
async function queryDatabase() {
try {
const response = await fetch('query.php');
const data = await response.json();
document.getElementById('result').innerText = JSON.stringify(data);
} catch (error) {
console.error('Error:', error);
}
}
</script>
</body>
</html>
<?php
// query.php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database_name";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
// 查询数据
$sql = "SELECT id, name FROM users";
$result = $conn->query($sql);
$data = [];
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
$data[] = $row;
}
}
echo json_encode($data);
$conn->close();
?>
参考链接:
原因:浏览器的同源策略限制了从一个源加载的文档或脚本如何与来自另一个源的资源进行交互。
解决方法:
示例代码(PHP 设置 CORS 头):
<?php
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Methods: GET, POST, OPTIONS");
header("Access-Control-Allow-Headers: Content-Type");
?>
参考链接:
通过 HTML5 和 JavaScript 结合服务器端脚本(如 PHP)可以实现与 MySQL 数据库的交互。在实际开发中,需要注意处理跨域请求等问题。通过合理的架构设计和安全措施,可以构建出高效、安全的 Web 应用。
领取专属 10元无门槛券
手把手带您无忧上云