php - 获取sql表数据,保存在一个php文件中的数组变量中,并显示在预先创建的表下的另一个php文件中
问题描述
这个问题很拗口,所以我会直接解释。我有两个 php 文件,index.php 和 server.php。
在 index.php 中是我创建的表。目前我从数据库中提取数据并将其显示在表格中。一切正常。下面的代码:
索引.php:
<table class="w3-table-all w3-responsive w3-hoverable">
<tr class="w3-grey">
<th><b>Project Name</b></th>
<th><b>Project Number</b></th>
<th><b>Description</b></th>
<th><b>Area</b></th>
<th><b>Project Leader Name</b></th>
<th><b>Project Leader Email</b></th>
<th><b>Project Leader Number</b></th>
<th><b>Project Manager Name</b></th>
<th><b>Project Manager Email</b></th>
<th><b>Project Manager Number</b></th>
<th><b></b>Project Team</th>
<th><b></b>Project Status</th>
</tr>
<tr>
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "db";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT pname, pnumber, description, area, plname, plemail,
plnumber, pmname, pmemail, pmnumber, pteam, status
FROM data
WHERE category='Radio'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "<td>" . $row["pname"]. "</td><td>" . $row["pnumber"]. "</td><td>" . $row["description"] . "</td><td>" . $row["area"] . "</td><td>" . $row["plname"] . "</td><td>"
. $row["plemail"] . "</td><td>" . $row["plnumber"] . "</td><td>" . $row["pmname"] . "</td><td>" . $row["pmemail"] . "</td><td>" . $row["pmnumber"] . "</td><td>"
. $row["pteam"] . "</td><td>" . $row["status"] . "</td><td>";
}
} else {
echo "0 results";
}
$conn->close();
?>
</tr>
</table>
我想要的是从数据库中提取的数据和保存在 server.php 中的变量中的信息,然后我可以再次访问并在 index.php 的表下正确显示。
到目前为止,我在 server.php 中尝试过的内容如下:
服务器.php:
//Get variable from JS in index.php
if (isset($_POST['Category'])) {
$gotcategory = $_POST['Category'];
//$_SESSION['success'] = "Category has been set to $gotcategory"; //Debug
display for checking category variable
// Select project information from database to display in table format
$db = new mysqli('localhost', 'root', '', 'db');
$sql = "SELECT pname, pnumber, description, area, plname, plemail, plnumber, pmname, pmemail, pmnumber, pteam, status FROM data WHERE category='$gotcategory'";
$result = $conn->query($sql);
$all_data = array();
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
$toadd = "<td>" . $row["pname"]. "</td><td>" . $row["pnumber"]. "</td><td>" . $row["description"] . "</td><td>" . $row["area"] . "</td><td>" . $row["plname"] . "</td><td>"
. $row["plemail"] . "</td><td>" . $row["plnumber"] . "</td><td>" . $row["pmname"] . "</td><td>" . $row["pmemail"] . "</td><td>" . $row["pmnumber"] . "</td><td>"
. $row["pteam"] . "</td><td>" . $row["status"] . "</td><td>";
$all_data[] = $toadd;
}
$_SESSION['Data'] = $alldata;
} else {
$_SESSION['Data'] = "No data";
}
回到 index.php 中:
<table class="w3-table-all w3-responsive w3-hoverable">
<tr class="w3-grey">
<th><b>Project Name</b></th>
<th><b>Project Number</b></th>
<th><b>Description</b></th>
<th><b>Area</b></th>
<th><b>Project Leader Name</b></th>
<th><b>Project Leader Email</b></th>
<th><b>Project Leader Number</b></th>
<th><b>Project Manager Name</b></th>
<th><b>Project Manager Email</b></th>
<th><b>Project Manager Number</b></th>
<th><b></b>Project Team</th>
<th><b></b>Project Status</th>
</tr>
<tr>
<td><?php echo ($_SESSION['Data'])?></td>
</tr>
</table>
出于某种原因,这似乎不起作用。我没有得到任何输出,甚至没有“无数据”。
我知道这是一堵巨大的文字墙,但对此的任何帮助将不胜感激。
谢谢
斯莱姆
解决方案
推荐阅读
- hive - 使用 ORC 格式将事件从 kafka 写入 Hive
- symfony - Symfony 4 在 Normalizer 中禁用 CamelCase
- c# - OWIN 如何配置 /signout-oidc 以删除 cookie
- android - Flutter:失去与设备的连接(生产应用程序)
- javascript - 初始变量未在减速器中定义
- python - 打印出特定文本时如何停止运行工具?
- primefaces - p:datascroller 只延迟加载一次
- swift - 在 SwiftUI 中设置切换颜色
- python - 如何获得整数的倒数?
- java - 通过 http post 下载文件正在返回 zip 文件内容