我正在尝试在Windows上连接 我的PHP代码与SQL Server(Windows身份验证)。我正在使用xampp。
这是我的代码,但是不起作用。
<?php
$dbPassword = "";
$dbUserName = "Inspiron/Malky";
$dbServer = "localhost";
$dbName = "person";
// $conn = mysqli_connect($dbServer , $dbUserName , $dbPassword,$dbName) or die("unable to connect to host");
$connectionInfo = array( "Database"=>$dbName);
$conn = sqlsrv_connect( $dbServer, $connectionInfo);
if( $conn ) {
echo "Connection established.<br />";
}else{
echo "Connection could not be established.<br />";
die( print_r( sqlsrv_errors(), true));
}
?>
错误
Fatal error: Uncaught Error: Call to undefined function sqlsrv_connect() in C:\xampp\htdocs\connection\connection.php:12 Stack trace: #0 C:\xampp\htdocs\connection\phpAdd.php(2): require() #1 {main} thrown in C:\xampp\htdocs\connection\connection.php on line 12
有人可以帮助我还是给我一些阅读链接?
答案 0 :(得分:0)
什么环境? Windows OS服务器,Linux(哪种版本),MAC OS。如果未使用MAMP,LAMP,那么您正在使用哪些Web服务组件?
从php发布日志文件,以输出日志/错误消息。
检查php是否需要sql文件,例如包含例如目录;
php_sqlsrv_7_nts.signature
php_sqlsrv_7_nts.so
php_sqlsrv_7_ts.signature
php_sqlsrv_7_ts.so
我发现对于Linux和Windows平台,需要安装SQL驱动程序。如果尚未安装sql驱动程序和odbc驱动程序,则可能必须安装。其他重要文档位于:
示例应用程序(SQLSRV驱动程序) https://docs.microsoft.com/en-us/sql/connect/php/example-application-sqlsrv-driver?view=sql-server-2017
如何在MAMP Mac OS Laravel 2018上安装sqlsrv驱动程序 https://www.youtube.com/watch?v=PRH04PxZpUk&feature=youtu.be
Ubuntu Linux https://www.microsoft.com/en-us/sql-server/developer-get-started/php/ubuntu/
为SQL Server下载PHP驱动程序 https://docs.microsoft.com/en-us/sql/connect/php/download-drivers-php-sql-server?view=sql-server-2017
ODBC驱动程序,请参见示例 https://github.com/Microsoft/msphpsql/releases/tag/v5.3.0
如果使用Ubuntu Linux,您是否将mssql绑定到php / appache?例如,
apt-cache search mssql
这将显示数据库包
sudo apt-get install freetds-common freetds-bin unixodbc php5-sybase
要测试与SQL的连接:
tsql -H 10.192.0.10 -p 1433 -U UserAccount -P yourpasswrd -D dbsource
使用php进行简单测试;
<?php
function ConnectDB() {
$conn = mssql_connect(“10.192.0.10”, “UserAccount”,
“yourpasswrd”);
return $conn;
}
?>