繁体   English   中英

无法连接到 mssql 服务器或 sqlsrv 未显示在 phpinfo 上

[英]cant connect to mssql server or sqlsrv not showing up on phpinfo

我在连接到 SQL 服务器时遇到问题。 我从这里开始执行所有步骤,并且已经更改了php.ini配置文件:

;On windows: 
extension_dir = "D:\xampp\php\ext"

但是还是连接不上,我的PHP版本是7.2.11。 我尝试使用mssql_connect()sqlsrv_connect()

这是我的尝试:

<?php
$servername = "1111";
$username = "user";
$password = "123";
$dbname = "DEV";

$connection = mssql_connect($servername, $username, $password);
if (!$connection) {  die('Not connected : ' . mssql_get_last_message());} 
$db_selected = mssql_select_db($dbname, $connection);
if (!$db_selected) {
  die ('Can\'t use db : ' . mssql_get_last_message());
} else{

echo "success";}
?>

用于 PHP 的 MSSQL 扩展mssql_函数)和用于 SQL Server 的 PHP 驱动程序sqlsrv_函数)是 PHP 的两个不同扩展。

MSSQL 扩展在装有 PHP 5.3 或更高版本的 Windows 上不再可用,因此您需要为 SQL Server 安装 PHP 驱动程序。 您需要下载此驱动程序的适当版本。 对于 PHP 7.2 - 版本 5.2 或 5.3(32 位或 64 位也取决于 PHP 版本)。 还要下载并安装适当的 ODBC 驱动程序。

使用<?php phpinfo();?>检查配置。 应该有一个名称为pdo_sqlsrv (如果您使用 PDO)和/或sqlsrv (没有 PDO)的部分。

例子:

<?php
$server   = '1111';
$database = 'DEV';
$uid      = 'user';
$pwd      = '123';

# SQL Server authentication
#$cinfo = array(
#    "Database" => $database,
#    "UID" => $uid,
#    "PWD" => $pwd
#);

# Windows authentication
$cinfo = array(
    "Database" => $database
);

$conn = sqlsrv_connect($server, $cinfo);
if ($conn === false) {
    echo "Error (sqlsrv_connect): ".print_r(sqlsrv_errors(), true);
    exit;
} else {
    echo "success";
}

sqlsrv_close($conn);
?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM