Codeigniter 3+PHP5.6+xampp+SQLServer2008+win7 64x

Codeigniter 3+PHP5.6+xampp+SQLServer2008+win7 64x,php,sql-server,codeigniter,sql-server-2008,Php,Sql Server,Codeigniter,Sql Server 2008,很抱歉,如果存在这种情况,但是我在使用codeigniter 3、PHP5.6、SQLServer2008和win7 64x时遇到了问题。 我按照不同网站的步骤,比如Rob's Area,也在这个网站上读了一些问题,但仍然找不到答案 使用SQLSRV32.EXE中的php_pdo_sqlsrv_56_ts.dll和php_sqlsrv_56_ts.dll,我得到的错误是: 无法使用提供的设置连接到数据库服务器。 文件名:C:/xampp/htdocs/mycodeigniter/system/d

很抱歉,如果存在这种情况,但是我在使用codeigniter 3、PHP5.6、SQLServer2008和win7 64x时遇到了问题。 我按照不同网站的步骤,比如Rob's Area,也在这个网站上读了一些问题,但仍然找不到答案

使用SQLSRV32.EXE中的php_pdo_sqlsrv_56_ts.dll和php_sqlsrv_56_ts.dll,我得到的错误是:

无法使用提供的设置连接到数据库服务器。 文件名:C:/xampp/htdocs/mycodeigniter/system/database/DB_driver.php 电话号码:436

然后下载Rob的sqlsrv_Non-Official_3.0.2.2.zip并得到以下错误:

消息:调用未定义的函数sqlsrv_connect 文件名:sqlsrv/sqlsrv_driver.php行号:144

我在Codeigniter中的代码是:

$db['default'] = array(
'dsn'   => '',
'port'  => '1433',
'hostname' => '127.0.0.1',
'username' => 'myuser',
'password' => 'mypass',
'database' => 'mydb',
'dbdriver' => 'sqlsrv',
'dbprefix' => '',
'pconnect' => TRUE,
'db_debug' => TRUE,
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'autoinit' => TRUE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
然后使用了这个,这个有效,但是查询时不能调用结果

 $db['default'] = array(
'dsn'   => 'Driver={SQL Server Native Client 10.0};Server=127.0.0.1;Database=mydb;',
'hostname' => '',
'username' => 'myuser',
'password' => 'mypass',
'database' => 'mydb',
'dbdriver' => 'sqlsrv',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => TRUE,
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE

请提供一些想法?

以php_pdo_sqlsrv_56_ts.dll为例,当前的sqlsrv构建应该是正常的,否则您必须采用robs构建

之后,在数据库配置中尝试以下操作

$db['default'] = array
(
    'dsn'   => 'sqlsrv:server=127.0.0.1,1433;Database=mydb',
    'username' => 'myuser',
    'password' => 'mypass',
    'dbdriver' => 'pdo',
    ...
);
1433是当前端口-将其更改为您定义的端口-但我不确定您是否需要该端口


显示了什么错误?工作起来很有魅力!非常感谢你!它是通过SQLSRV32.EXE DLL实现的。起初我遇到了一个ODBC错误,所以我不得不为SQL Server msodbcsql.msi安装ODBC驱动程序11。哦,是的,忘了提一下,以防有人来寻找相同的解决方案:sintakonte给出的答案是172.0.0.1,显然您需要将其更改为127.0.0.1或localhost: