PHP 从 MSSQL 检索数据时结果少一行
Less one row result when retrieve data from MSSQL on PHP
我正在尝试从 PHP 上的 SQL 服务器检索数据。
但是我在这里遇到了一些问题。
同样的sql查询,在数据库中显示的记录是6行,但在PHP上只显示了5行。任何的想法?提前致谢。
SQL 结果
PHP 结果
代码
$stmt = sqlsrv_prepare($conn, $sql);
$result = sqlsrv_execute($stmt);
$row = sqlsrv_fetch_array($stmt);
$i = 1;
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC))
{ ?>
代码
<tr>
<td><?php echo $i++;?></td>
<?php foreach($row as $item ) { ?>
<td><?=$item ?> </td>
// Try your foreach loop like the following.
$html = NULL;
$html .= '<tr>';
foreach($row as $item) {
$html .= '<td>'. $item . '</td>';
}
$html .= '</tr>';
echo $html;
您没有从您的服务器输出第一行数据:$row
在此语句中分配的值
$row = sqlsrv_fetch_array($stmt);
被该语句覆盖
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC))
在它被使用之前。您应该只删除代码中的第一条语句,即
$stmt = sqlsrv_prepare($conn, $sql);
$result = sqlsrv_execute($stmt);
$i = 1;
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC))
我正在尝试从 PHP 上的 SQL 服务器检索数据。 但是我在这里遇到了一些问题。 同样的sql查询,在数据库中显示的记录是6行,但在PHP上只显示了5行。任何的想法?提前致谢。
SQL 结果
PHP 结果
代码
$stmt = sqlsrv_prepare($conn, $sql);
$result = sqlsrv_execute($stmt);
$row = sqlsrv_fetch_array($stmt);
$i = 1;
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC))
{ ?>
代码
<tr>
<td><?php echo $i++;?></td>
<?php foreach($row as $item ) { ?>
<td><?=$item ?> </td>
// Try your foreach loop like the following.
$html = NULL;
$html .= '<tr>';
foreach($row as $item) {
$html .= '<td>'. $item . '</td>';
}
$html .= '</tr>';
echo $html;
您没有从您的服务器输出第一行数据:$row
在此语句中分配的值
$row = sqlsrv_fetch_array($stmt);
被该语句覆盖
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC))
在它被使用之前。您应该只删除代码中的第一条语句,即
$stmt = sqlsrv_prepare($conn, $sql);
$result = sqlsrv_execute($stmt);
$i = 1;
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC))