1

I'm trying to connect to my database using PDO drivers and as far as I know they are installed correctly. I have added the extensions to my php.ini file and the drivers are in the ext folder, I downloaded Microsoft drivers 3.0. PHPinfo() says pdo_sqlsrv drivers are enabled. I'm using a Windows server with iis. I have PHP 5.4 installed and using the non-thread safe drivers. What else could I be missing?

<?php

try{
$dbh = new pdo( 'sqlsrv=websvr\sqlwebdata:1433;dbname=xxxx',
                'xxxx',
                'xxxx',
                array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
die(json_encode(array('outcome' => true)));
}
catch(PDOException $ex){
  print "Error!: " . $ex->getMessage() . "<br/>";
    die();

}

?>

4

1 回答 1

4

http://docs.php.net/manual/de/pdo.construct.php says:

PDO::__construct() ( string $dsn, ...
[...]
In general, a DSN consists of the PDO driver name, followed by a colon, followed by the PDO driver-specific connection syntax

try it with (edit: fixed Database= keyword)

new pdo( 'sqlsrv:Server=websvr\sqlwebdata,1433;Database=xxxx',

see also: http://php.net/ref.pdo-sqlsrv.connection

于 2013-06-07T13:12:21.733 回答