[英]PHP + SQL Database Azure error
我是Web開發的初學者,對PHP + SQL Database連接和顯示結果有疑問。
<?php
ini_set('display_errors',1);
ini_set('display_startup_errors',1);
error_reporting(-1);
function OpenConnection()
{
try
{
$serverName = "tcp:***,1433";
$connectionOptions = array("Database"=>"flan",
"Uid"=>"***", "PWD"=>"***");
$conn = sqlsrv_connect($serverName, $connectionOptions);
if($conn == false)
die(FormatErrors(sqlsrv_errors()));
}
catch(Exception $e)
{
echo("Error!");
}
}
function ReadData()
{
try
{
$conn = OpenConnection();
$tsql = "SELECT * FROM tour_id";
$getProducts = sqlsrv_query($conn, $tsql);
if ($getProducts == FALSE)
die(FormatErrors(sqlsrv_errors()));
$productCount = 0;
while($row = sqlsrv_fetch_array($getProducts, SQLSRV_FETCH_ASSOC))
{
echo($row['tour_title']);
echo("<br/>");
$productCount++;
}
sqlsrv_free_stmt($getProducts);
sqlsrv_close($conn);
}
catch(Exception $e)
{
echo("Error!");
}
}
echo ReadData();
?>
結果:
警告:sqlsrv_query()期望參數1為資源,第29行的D:\\ home \\ site \\ wwwroot \\ test.php中給出的null致命錯誤:調用D:\\ home \\ site \\ wwwroot \\中未定義的函數FormatErrors()第31行的test.php
您的Openconnection()
函數未返回任何內容,因此$conn
始終為null
。
在函數中添加返回行,如下所示以返回連接:
function OpenConnection()
{
try
{
$serverName = "***";
$connectionOptions = array("Database"=>"***", "Uid"=>"***", "PWD"=>"***");
$conn = sqlsrv_connect($serverName, $connectionOptions);
if($conn == false)
die(FormatErrors(sqlsrv_errors()));
return $conn; // <--- Here
}
catch(Exception $e)
{
echo("Error!");
}
}
您不是從OpenConnection函數返回連接。
//...
$conn = sqlsrv_connect($serverName, $connectionOptions);
if($conn == false)
die(FormatErrors(sqlsrv_errors()));
return $conn;
//...
此外:您不應該在線發布憑證。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.