我已经设法使用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 |
答案 0 :(得分:2)
将您的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;