就是這樣。在PHP 5.x中是否有任何簡單的方法來回顯RecordSet上的任何類型的數據?
我寫了一個SQL語句啞鴨,如:
SELECT * FROM table
基本上我想:
- 做一個普通的SELECT語句;
- 通過Resulset循環;
- 將元數據「名稱」打印爲表格標題。
- 再次循環結果集;
- 將每條記錄打印爲表格行。
- 將每個字段打印爲表格列。
- 如何在字段中測試數據,以便我可以正確地將這些數據作爲字符串進行回顯?我不確定自己是否清楚。
我不知道什麼數據將返回形成報表,以前。 這是嘗試打印日期時間字段,並獲得錯誤後的動機。
這是我的PHP代碼:
$sql = "SELECT * FROM client";
$stmt = sqlsrv_query($conn, $sql);
if($stmt === false)
{
die(print_r(sqlsrv_errors(), true));
}
$num_fields = sqlsrv_num_fields($stmt);
echo '<table class="table table-striped table-bordered">';
// Output Headers - In SQL Server
echo '<tr style="font-size:12px">';
foreach(sqlsrv_field_metadata($stmt) as $fieldMetadata)
{
foreach($fieldMetadata as $name => $value)
{
if ($name == "Name"){
echo "<td><strong>" . "$value" . "</td></strong>";
}
}
}
echo "</tr>";
// Output fields data, after fetch new row.
while (sqlsrv_fetch ($stmt))
{
// \echo '<tr class="small" style="font-size:10px">';
echo '<tr class="small">';
for ($i = 0; $i < $num_fields; $i++)
{
echo '<td class="text-nowrap">';
print_r (sqlsrv_get_field($stmt, $i));
echo "</td>";
}
echo "</tr>";
}
echo "</table>";
請糾正我任何不好的做法,或愚蠢的編碼......我在這裏一個完整的新手。
注意的是,在第一循環中,您已經把'strong'結束標記'td'之外。另外,你可以只寫**回聲「$值」 **不點操作。 – trincot
謝謝,@trincot,我在有點急的時候寫了這個腳本......已經修復了。 :) – JrZabott