如何从PDO的fetchAll结果中获取列名?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从PDO的fetchAll结果中获取列名?相关的知识,希望对你有一定的参考价值。
我创建了一个表单来从数据库中搜索表,用户可以在其中选择要查看的表。下面是我的表单代码。
<form action="search.php" method="post">
<label class="col-lg-3 control-label">Search Table:</label>
<select class="form-control" name="table1">
<option value="Country_Table">Country</option>
<option value="Flag_Table">Flag</option>
<option value="Region_Table">Region</option> </select>
<button id="search" type="submit" class="btn btn-primary">Search</button>
</form>
if(isset($_POST['search']))
$table1 = $_POST['table1'];
$sql = "SELECT * FROM $table1";
$stmt = $dbcon->prepare($sql);
$stmt->execute();
$result = $stmt->fetchAll();
假设用户选择“国家/地区”并显示结果,我使用以下代码:
<table class='table'>
<tr>
<th>ID</th>
<th>Area</th>
<th>Color</th>
</tr>
<?php foreach($result as $readrow) ?>
<div class="table-row">
<td><?php echo $readrow['id'];?></td>
<td><?php echo $readrow['area'];?></td>
<td><?php echo $readrow['color'];?></td>
问题是,如果用户选择'Flag'或'Region',如何显示表格结果?有什么办法,表格可以显示自己的标题?
答案
您在$ result变量中具有所有列标题
以上是关于如何从PDO的fetchAll结果中获取列名?的主要内容,如果未能解决你的问题,请参考以下文章
PDOStatement:在 `fetchAll($mode);` 和 `setFetchMode($mode); 之间得到不同的结果;获取所有();`