В приведенном ниже коде я пытаюсь подключиться к базе данных azure-sql с PHP, а в первой части if я выписываю, если соединение не удалось, чего я не получаю. В следующем случае я выписываю, если соединение прошло, на которое я получаю сообщение («Соединение выполнено успешно»). Это похоже на правильное соединение; однако, я получаю вывод 0
хотя он явно попадает в эту часть else. Я не могу сказать из исследования, если 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>