2016-11-02 16 views
0

以下のコードでは、PHPを使用してazure-sqlデータベースに接続しようとしていますが、ifの最初の部分で接続が失敗した場合は書き出します受け取ります。次に接続が成功すると、私はメッセージを取得します( "Connection succeeded")。これは正しく接続されているようです。しかし、私は0の出力を得ていますが、それは明らかにelseのこの部分に当てはまります。私は、0が成功を意味するかどうかを研究から知ることはできませんが、接続が失敗した場合、ifの最初の部分にヒットしませんか?Azure-SQLデータベースへのPHP接続

問題は、このコードでは文字列に追加された配列列が出力されないため、実際には失敗しているか、構文のように間違っていると思われます。

<?php 

    /// Test variable 
    $writeOutResult = "Result: "; 

    /// VARIABLES NOT INCLUDED 

    /// Connect 
    $connInfo = array("Database"=>$azureDB 
      , "UID"=>$azureUser 
      , "PWD"=>$azurePass 
      , "MultipleActiveResultSets"=>true 
     ); 
    $conn = sqlsrv_connect($azureServer,$connInfo); 

    /// Test connection 
    if($conn === false) 
    { 
     //FatalError("Server unavailable."); 
     $writeOutResult = "Connection failed."; 
    } 
    else 
    {  
     echo "Connection succeeded"; 
     $get = sqlsrv_query($conn,$query); 

     while ($row = sqlsrv_fetch_array($get, SQLSRV_FETCH_ASSOC)) 
     { 
      $writeOutResult += $row["Column"]; 
     } 
    } 
?> 
<html> 
<head><title></title></head> 
<body> 
<p>Output:</p> 
<?php 
    echo $writeOutResult; 
?> 
</body> 
</html> 
+0

あなたの変数 '$ query'が有効なSQL stmtであることを確認しましたか? SSMSの '$ query' stmtを直接使用してデータをクエリできますか? –

答えて

0

PHPに明らかなエラーはないようです。私は私の側でテストし、うまくいきました。

次のような場合がありますが、1つ1つ確認できます。

  • SQLクエリstmtが正しいかどうかを確認してください。確認のためにSSMSでクエリを実行できます。

  • 値とデータタイプを確認してください。それがプラスであるかどうか。

さらに詳しいことがあれば教えてください。

関連する問題