使用PHP从存储在explode函数中的多个列的SQL数据库中获取数据

时间:2017-08-23 13:42:29

标签: php sql sql-server database html5

我正在使用此代码使用PHP

从SQL Server数据库获取数据
<?php   
foreach ($dbDB->query($query) as $row) {

echo "<tr>";
                echo "<td>" . $row['Country'] . "</td>";
                echo "<td>" . $row['OrderNumber'] . "</td>";
                echo "<td>" . $row['Region'] . "</td>";
                echo "<td>" . $row['ShipDate'] . "</td>";
                echo "<td>" . $row['ProducedDate'] . "</td>";

echo "</tr>"; } 
        ?> 

我正在尝试替换这些多行,但将列的名称存储在字符串中,例如 $ _ POST ['SelectedColumns']

以逗号分隔的字符串形式发布的值,例如:Country,OrderNumber,Region,ShipDate,ProducedDate

我尝试过这个解决方案,但仍然没有为我工作。

<?php
$ser="********";
$db="******";
$user="******"; 
$pass="******";
$query = 'SELECT '.$_POST['SelectedColumns'].' FROM reporting.REPORT_ALL';

$dbDB = new PDO("odbc:Driver=ODBC Driver 13 for SQL Server;Server=*******;Database=******;Port=1456", $user, $pass);

$row = $_POST["SelectedColumns"];
$rows = explode(",",$row);

/*Here I have the another html code independent of this part */ 

foreach ($dbDB->query($query) as $dataRow) {
echo "<table>";
echo "<tr>";

 foreach ($rows as $r ) {
             echo "<td>" . $dataRow[$r] . "</td>";  }

echo "</tr>";
echo "</table>"; } 
?> 

有什么建议吗?

0 个答案:

没有答案