如何在 PHP 中将垂直表与水平视图对齐



我已经设法使用PDO和PHP编程在MS Access DB中查询一个表。 但表格以垂直视图显示。我想将其更改为普通表,但我不知道如何。

这是我的代码:

<?php
if(isset($_POST['search']))
{
$month = $_POST['month'];
$year = $_POST['year'];
$connectdb = new PDO("odbc:DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=D:Demo2018.mdb; Uid=; Pwd=COMPLETEPAYROLL;");
$sql = "SELECT *
FROM `tblPAyTrans` 
WHERE Month ='$month' AND Year ='$year'";
if ($result = $connectdb->query($sql)) {
echo '<table>';
foreach($result->fetchAll(PDO::FETCH_ASSOC) as $row) {                
foreach($row as $key  => $value) {
echo '<tr><td>' . $key . '</td></tr>';
echo '<tr><td>' . $value . '</td></tr>';
}
}
echo '</table>';
}      
}
?>

输出如下所示:

| AutoNumber    |<-column
| 39779         |<-value
| Employee ID   |<-column
| 1008          |<-value
| Salary Type   |<-column
| Monthly       |<-value
| Pay Frequency |<-column
| Once a Month  |<-value

我想要的输出:

|Column Name|Column Name|Column Name|Column Name|
|   Value   |   Value   |   Value   |   Value   |

用以下代码替换您的foreach

$rows = '';
foreach($result->fetchAll(PDO::FETCH_ASSOC) as $row) {                
$heading = '';
$rows .= '<tr>';
foreach($row as $key  => $value) {
$heading .= '<th>'.$key.'</th>';
$rows .= '<td>' . $value . '</td>';
}
$rows .= '</tr>';
}
echo '<tr>'.$heading.'</tr>';
echo $rows;

最新更新