在下面的代码中,我尝试使用PHP连接到azure-sql数据库,在if的第一部分,我写出连接是否失败,我没有收到。在接下来的其他地方,我写出了连接是否通过,我得到了消息("连接成功")。这似乎连接正确;但是,我确实得到0
的输出,即使它明显击中了其他部分。我无法从研究中得知0是否意味着成功,但如果连接失败,它是否会触及if的第一部分?
问题是这段代码没有输出添加到字符串中的数组列,因此看起来当它注册成功时,它实际上失败了,或者其他错误,就像语法一样。
<?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 :(得分:0)
似乎PHP上没有明显的错误。我在我身边测试过,效果很好。
可能是以下原因的情况,您可以逐一检查。
请检查SQL查询stmt,是否正确,您可以在SSMS中查询以进行验证。
检查值和数据类型。是否可以直接加。
如有任何疑问,请随时告诉我。