尝试使用PDO使用PHP连接到远程Microsoft SQL Server的问题

时间:2017-05-15 20:21:31

标签: php sql-server pdo

我正在尝试使用HTML5,CSS,Javascript和PHP创建一个简单的Web应用程序。该应用程序的目的是从远程Microsoft SQL Server数据库中提取数据,并将数据主要基于日期安排在计划表中。我的框架大部分都是,我在尝试从数据库中提取数据时遇到了很多麻烦。我尝试了很多不同的驱动程序设置,除了砖墙,我似乎无法击中任何东西。

我尝试过的一些设置是:

    <code>
    try {
            $conn = new PDO("sqlsrv:server=$hostname; database=$dbname", $username, $pw);
           $conn->setAttribute(PDO:: ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
           echo"Connected Successfully";
        }
        catch(PDOException $e){
            echo "Connection failed: " . $e->getMessage();
        }
</code>

and

<code>
    $dsn = "sqlserver:host=$hostname;dbname=$dbname;port=$port;charset=utf8");
       $opt = [
            PDO::ATTR_ERRMODE            => PDO::ERRMODE_EXCEPTION,
            PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
            PDO::ATTR_EMULATE_PREPARES   => false,
    ];

    $pdo = new PDO($dsn, $username, $pw, $opt);
    </code>

我不是最熟悉PHP的人,而且我想要变得更好。但是,我已经用这个问题在一个墙上撞了我的头,差不多一个星期了。任何帮助将不胜感激。

非常感谢你。

编辑:对于后来试图找到这样一个问题的答案的人,我不确定我做了什么。我从来没有最终编辑php.ini工作的设置是

try {
        $conn = new PDO("sqlsrv:Server=<IP ADDRESS>,<PORT>;Database=<DBNAME>", $username, $pw);
       $conn->setAttribute(PDO:: ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
       echo"Connected Successfully";
    }
    catch(PDOException $e){
        echo "Connection failed: " . $e->getMessage();
    }

如果您仍然遇到问题,可以使用它打印出所有已安装的驱动程序:

foreach(PDO::getAvailableDrivers()as $driver){
          if($driver==NULL){
              echo"No PDO Drivers were found";
          }else{
              echo $driver . "<br />";

0 个答案:

没有答案