当前位置:首页 > PHP

php实现动态表格

2026-02-16 04:54:53PHP

PHP 实现动态表格的方法

从数据库动态生成表格

连接数据库并查询数据,将结果渲染为 HTML 表格:

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

$sql = "SELECT id, name, email FROM users";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    echo "<table border='1'><tr><th>ID</th><th>Name</th><th>Email</th></tr>";
    while($row = $result->fetch_assoc()) {
        echo "<tr><td>".$row["id"]."</td><td>".$row["name"]."</td><td>".$row["email"]."</td></tr>";
    }
    echo "</table>";
} else {
    echo "0 results";
}
$conn->close();
?>

通过数组动态生成表格

使用 PHP 数组数据生成表格:

<?php
$employees = [
    ["John", "Doe", "john@example.com"],
    ["Jane", "Smith", "jane@example.com"],
    ["Bob", "Johnson", "bob@example.com"]
];

echo "<table border='1'>";
echo "<tr><th>First Name</th><th>Last Name</th><th>Email</th></tr>";

foreach ($employees as $employee) {
    echo "<tr>";
    foreach ($employee as $cell) {
        echo "<td>$cell</td>";
    }
    echo "</tr>";
}

echo "</table>";
?>

添加动态交互功能

实现可编辑的动态表格:

<?php
// 假设数据来自数组
$products = [
    ["Product 1", 10.99, 5],
    ["Product 2", 24.50, 3],
    ["Product 3", 5.25, 8]
];

echo "<form method='post'>";
echo "<table border='1'><tr><th>Name</th><th>Price</th><th>Quantity</th><th>Action</th></tr>";

foreach ($products as $index => $product) {
    echo "<tr>";
    echo "<td><input type='text' name='products[$index][name]' value='{$product[0]}'></td>";
    echo "<td><input type='number' name='products[$index][price]' value='{$product[1]}' step='0.01'></td>";
    echo "<td><input type='number' name='products[$index][quantity]' value='{$product[2]}'></td>";
    echo "<td><button type='submit' name='update' value='$index'>Update</button></td>";
    echo "</tr>";
}

echo "</table>";
echo "</form>";

if (isset($_POST['update'])) {
    $index = $_POST['update'];
    // 处理更新逻辑
}
?>

使用 Bootstrap 美化动态表格

结合 Bootstrap 创建响应式表格:

<?php
$data = [
    ["ID" => 1, "Name" => "Alice", "Age" => 28],
    ["ID" => 2, "Name" => "Bob", "Age" => 32],
    ["ID" => 3, "Name" => "Charlie", "Age" => 25]
];

echo '<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">';
echo '<div class="table-responsive">';
echo '<table class="table table-striped table-hover">';
echo '<thead class="table-dark"><tr>';

// 生成表头
foreach (array_keys($data[0]) as $header) {
    echo "<th>$header</th>";
}

echo '</tr></thead><tbody>';

// 生成表格内容
foreach ($data as $row) {
    echo "<tr>";
    foreach ($row as $cell) {
        echo "<td>$cell</td>";
    }
    echo "</tr>";
}

echo '</tbody></table></div>';
?>

动态表格分页实现

添加分页功能:

<?php
$perPage = 5;
$page = isset($_GET['page']) ? (int)$_GET['page'] : 1;
$offset = ($page - 1) * $perPage;

// 模拟数据
$allData = range(1, 50);
$pageData = array_slice($allData, $offset, $perPage);

echo "<table border='1'><tr><th>Item</th></tr>";
foreach ($pageData as $item) {
    echo "<tr><td>$item</td></tr>";
}
echo "</table>";

// 分页链接
$totalPages = ceil(count($allData) / $perPage);
for ($i = 1; $i <= $totalPages; $i++) {
    echo "<a href='?page=$i'>$i</a> ";
}
?>

以上方法提供了不同场景下实现 PHP 动态表格的方案,可以根据具体需求选择合适的实现方式。

php实现动态表格

标签: 表格动态
分享给朋友:

相关文章

vue实现动态

vue实现动态

Vue 实现动态路由的方法 在 Vue 中实现动态路由通常涉及以下几个关键步骤: 使用 Vue Router 的动态路由匹配 通过 Vue Router 的 :param 语法可以实现动态路由匹配…

css表格制作表格

css表格制作表格

CSS 表格制作方法 使用 CSS 创建表格可以通过多种方式实现,包括原生 HTML 表格元素结合 CSS 样式,或者使用纯 CSS 布局技术(如 Flexbox 或 Grid)模拟表格效果。以下是常…

动态路由的实现vue

动态路由的实现vue

动态路由的实现(Vue) 在Vue中实现动态路由通常涉及以下方法: 基于路由参数(params) 在路由配置中使用动态片段(以冒号开头),例如: const routes = [ { path…

vue表格实现复选框

vue表格实现复选框

Vue表格实现复选框的方法 基础实现(使用v-model绑定数组) 在Vue中可以通过v-model绑定数组来实现复选框功能。以下是一个基础示例: <template> <ta…

vue实现表格复选

vue实现表格复选

实现表格复选的基本思路 在Vue中实现表格复选功能,通常需要结合v-model绑定选中状态,监听复选框变化事件,以及维护一个选中项的数组。以下是具体实现方法: 基础实现步骤 数据准备 定义表格数据和…

vue动态组件实现

vue动态组件实现

动态组件的基本用法 在Vue中,动态组件通过<component>标签和is属性实现。is属性可以绑定组件名称或组件选项对象,实现动态切换。 <template> &l…