使用PHP从SQL Server获取多列的数据

时间:2017-08-24 10:00:22

标签: php sql sql-server

我尝试从SQL Server中选择数据,但只选择存储在变量 SelectedColumns 中的列。此变量存储由下拉列表中逗号分隔的列名。例如:echo $SelectedColumns将显示国家/地区,产品,日期

我可以通过展开变量来创建表格的标题并使用foreach。现在我想让这些列的数据显示在<tbody> </tbody>

这是我的php页面:

 <?php   
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

$ser="********";
$db="********"; 
$user="********"; 
$pass="********";
$query = 'SELECT '.$_POST['selectedColumns'].' FROM ********';
$dbDB = new PDO("odbc:Driver=ODBC Driver 13 for SQL Server;Server=********,1456;Database=********;Port=1456", $user, $pass);
?>   

<!DOCTYPE html>  
<html>  
<head>  
    <title>table</title>  
    <link rel="stylesheet" href="https://cdn.datatables.net/1.10.15/css/jquery.dataTables.min.css" /> 
    <script src="https://code.jquery.com/jquery-1.12.4.js"></script>                  
    <script src="https://cdn.datatables.net/1.10.15/js/jquery.dataTables.min.js"></script>  
</head>  

<body>  
 <table id="example" class="display" cellspacing="0" width="100%">
        <thead>
        <?php
         $row = $_POST["selectedColumns"];
         $rows = explode(",",$row);
        echo "<tr>";
         foreach ($rows as $r ) {
        echo "<td>";
        echo $r; 
        echo "<td>";                        
        }  
        echo "</tr>";
        ?>
        </thead>

        <tbody>
        </tbody>
</table>
 </body>  
</html>  

     <script>
$(document).ready(function() {
    $('#example').DataTable();
} );
</script>

我正在尝试使用此解决方案两次使用foreach

<?php  
$row = $_POST["selectedColumns"];
$rows = explode(",",$row);
foreach ($dbDB->query($query) as $dataRow) {
echo "<tr>";
foreach ($rows as $r ) {
echo "<td>" . $dataRow[$r] . "</td>"; }
echo "</tr>"; 
} 
?>

但它不起作用。有什么建议吗?非常感谢你。

0 个答案:

没有答案