所以我有一个网站,我正在开发的工作。它允许销售人员进入并输入日期范围和首字母缩写,并查询我的数据库,并将表格返回给他们以及他们的数据。我拉的列数取决于他们选择的日期范围。时间越长,列数越高(我将它逐周分隔,所以更多的天数= mores周)在我的网站上使用带有动态头的数据表显示mysql结果
我遇到的问题是,当我动态地拉列标题时,使用for循环从mysql查询中抓取标题,这样它就是动态的,我不必为每个他们可以选择的每一个情况编码,标题替换了我表中的第一项,所以我失去了1行。
我想知道是否有人有任何经验,动态获取MySQL查询集的列标题,并使用它们与数据表?
我不想粘贴大量的代码和群集这篇文章,让我知道你想看到什么,我会提供它。
非常感谢您提供的所有帮助,我希望我不会对我的问题感到困惑。
下面是代码样本:
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection Failed: " . $conn->connect_error);
}
$sql = "SELECT * FROM sampleTable";
$result = $conn->query($sql);
$conn->close();
?>
<div class="card mb-3">
<div class="card-header">
<i class="fa fa-table"></i></div>
<div class="card-body">
<div class="table-responsive">
<table class="table table-bordered" id="adminTable" width="100%" cellspacing="0">
<thead>
<?php
if ($result->num_rows > 0) {
echo "<tr>";
foreach(array_keys($result->fetch_assoc()) as $field){
echo "<th>" . $field . "</th>";
}
echo "</tr>";
} else {
echo "<h1 align=\"center\">No Results Found</h1>";
}
?>
</thead>
<tbody>
<?php
if ($result->num_rows > 0) {
while($data = $result->fetch_assoc()) {
echo "<tr>";
foreach ($data as $field => $value){
echo "<td>" . $value . "</td>";
}
echo "</tr>";
}
}
?>
</tbody>
</table>
</div>
</div>
<div class="card-footer small text-muted">Updated yesterday at 11:59 PM</div>
</div>
<!--Not included in current file - included in base php-->
<script type="text/javascript">
$('#dataTable').DataTable({
"scrollX": true,
"scrollY": '55vh',
"scrollCollapse": true,
"paging": false,
dom: 'iftB',
buttons: [
'copy', 'csv', 'excel', 'pdf', 'print'
]
});
</script>
您_need to_我们展示的代码。你是否在1个查询中获得了所有内容(标题+正文),还是分开执行?我会先从2个不同的查询开始,然后将它们结合起来。 – waterloomatt
@waterloomatt我发布了代码,我在一个查询中做了它,但是我已经在两个单独的查询中尝试了它,它仍然产生了同样的问题。 – MichaelJC
此任务的通用术语是* pivoting *您的表格。 –