当前位置:首页 > 行业动态 > 正文

html5链接数据库代码

“`php,,

环境准备

步骤 操作说明
安装数据库 使用MySQL、PostgreSQL、SQLite等数据库,本文以MySQL为例。
创建数据库 在数据库中创建用于存储数据的表(如users表)。
后端语言选择 使用PHP、Node.js等后端语言处理数据库连接与操作。
前端与后端交互 通过HTML表单或API接口传递数据。

数据库连接代码(PHP + MySQL)

<?php
// 数据库配置
$host = 'localhost';     // 数据库主机
$dbname = 'test_db';     // 数据库名称
$username = 'root';      // 数据库用户名
$password = '123456';    // 数据库密码
// 创建PDO对象(推荐方式)
try {
    $dsn = "mysql:host=$host;dbname=$dbname;charset=utf8";
    $pdo = new PDO($dsn, $username, $password, [
        PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, // 开启异常模式
        PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC // 关联数组返回数据
    ]);
    echo "数据库连接成功!";
} catch (PDOException $e) {
    die("数据库连接失败:" . $e->getMessage());
}
?>

前端HTML与后端交互

HTML表单提交数据

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">用户注册</title>
</head>
<body>
    <form action="register.php" method="POST">
        <label>用户名:<input type="text" name="username" required></label><br>
        <label>密码:<input type="password" name="password" required></label><br>
        <button type="submit">注册</button>
    </form>
</body>
</html>

PHP处理表单并写入数据库

<?php
// 接收前端数据
$username = $_POST['username'];
$password = $_POST['password']; // 实际使用需加密(如hash/bcrypt)
// 插入数据到数据库
$sql = "INSERT INTO users (username, password) VALUES (?, ?)";
$stmt = $pdo->prepare($sql); // 预处理语句防SQL注入
$stmt->execute([$username, $password]);
echo "用户注册成功!";
?>

数据查询与展示(AJAX示例)

PHP查询接口

<?php
// 查询所有用户
$sql = "SELECT  FROM users";
$result = $pdo->query($sql);
$users = $result->fetchAll();
// 返回JSON数据
header('Content-Type: application/json');
echo json_encode($users);
?>

HTML + JavaScript异步获取数据

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">用户列表</title>
    <script>
        // 使用Fetch API获取数据
        async function loadUsers() {
            const response = await fetch('get_users.php'); // PHP查询接口
            const users = await response.json();
            const table = document.getElementById('userTable');
            users.forEach(user => {
                const row = table.insertRow();
                row.insertCell().textContent = user.id;
                row.insertCell().textContent = user.username;
            });
        }
        window.onload = loadUsers;
    </script>
</head>
<body>
    <h2>用户列表</h2>
    <table id="userTable" border="1">
        <tr><th>ID</th><th>用户名</th></tr>
    </table>
</body>
</html>

常见问题与解答

问题1:如何选择数据库类型?

解答

html5链接数据库代码  第1张

  • 关系型数据库(MySQL/PostgreSQL):适合结构化数据(如用户表、订单表),支持复杂查询与事务。
  • 非关系型数据库(MongoDB/Redis):适合非结构化数据(如日志、缓存),扩展性强。
  • SQLite:适合小型项目或本地存储,无需独立数据库服务器。

问题2:如何防止SQL注入?

解答

  1. 使用预处理语句:如PDO的prepare()execute()方法,自动转义用户输入。
  2. 参数化查询:避免直接拼接SQL语句,
    $sql = "SELECT  FROM users WHERE username = :username";
    $stmt = $pdo->prepare($sql);
    $stmt->execute(['username' => $inputUsername]);
0