2

私は SQL Server と PHP にかなり慣れていませんが、PHP を使用してテーブル内の行の総数を取得しようとしています。

これは私が使用しているコードです。問題なく接続されますが、行数は出力されません。

<?php
$serverName = "SERVER1\SQLEXPRESS";
$connectionInfo = array( "Database"=>"petitionlist");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
     ?>
        <b>Error: </b>Could not connect to the server database.
     <?php
     die( print_r( sqlsrv_errors(), true));
}
$tsql = "Select Count(*) from SignatureTable";
$stmt = sqlsrv_query( $conn, $tsql);
if( $stmt === false )
{
     ?>
     <b>Error: </b>
     <?php
     die( print_r( sqlsrv_errors(), true));
}
    ?>
    <b>Result:</b><br />
    <?php
print_r(sqlsrv_fetch_object($stmt));

sqlsrv_free_stmt( $stmt);
sqlsrv_close( $conn);
?>

SQL Server Studio で「Select Count(*) from SignatureTable」コマンドを実行すると、正しい数値が返されます。これは私のサーバーではなく、私のコードです。

4

2 に答える 2

3

私はあなたの呼びかけを信じています

print_r(sqlsrv_fetch_object($stmt));

間違っているかもしれません。少なくとも呼び出しの方法に関するドキュメントを見ると、そこにエラーがある可能性があることがわかります。

http://www.php.net/manual/en/function.sqlsrv-fetch-object.php

fetch-object の代わりに fetch を使用してみてください。例に従うことをお勧めします。

http://www.php.net/manual/en/function.sqlsrv-fetch.php

于 2012-09-09T07:06:20.033 に答える
2

それをチェックしてください:

http://www.php.net/manual/es/function.sqlsrv-num-rows.php

" sqlsrv_num_rows()—結果セットの行数を取得します"

好き:

$row_count = sqlsrv_num_rows( $stmt);
echo 'numRows: ',$row_count;
于 2012-09-09T05:52:07.617 に答える