2017-01-25 2 views
0

Tut mir leid, wenn das existiert, aber ich habe Probleme mit codeigniter 3, PHP 5.6, sqlserver 2008 und win7 64x. Ich habe die Schritte von verschiedenen Seiten wie Rob's Area verfolgt, habe auch ein paar Fragen auf dieser Seite gelesen, finde aber immer noch keine Antwort.Codeigniter 3 + php 5.6 + xampp + sqlserver 2008 + win7 64x

Mit php_pdo_sqlsrv_56_ts.dll und php_sqlsrv_56_ts.dll von SQLSRV32.EXE der Fehler war ich immer war:

Unable to connect to your database server using the provided settings. Filename: C:/xampp/htdocs/mycodeigniter/system/database/DB_driver.php Line Number: 436

Dann Robs sqlsrv_unofficial_3.0.2.2.zip heruntergeladen und habe diesen Fehler:

Message: Call to undefined function sqlsrv_connect() Filename: sqlsrv/sqlsrv_driver.php Line Number: 144

Der Code, den ich in Codeigniter haben ist:

$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 

verwendet dann dieses, thi s hat funktioniert, aber kann die Ergebnisse beim Abfragen nicht aufrufen.

$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 

Bitte Ideen?

+0

Welcher Fehler zeigt? –

Antwort

1

Nehmen Sie die php_pdo_sqlsrv_56_ts.dll (afaik der aktuellen sqlsrv Build sollte in Ordnung sein, sonst haben Sie raubt zu nehmen bauen)

Danach versuchen Sie Folgendes in Ihrem db-config

$db['default'] = array 
(
    'dsn' => 'sqlsrv:server=127.0.0.1,1433;Database=mydb', 
    'username' => 'myuser', 
    'password' => 'mypass', 
    'dbdriver' => 'pdo', 
    ... 
); 

1433 is the current port - change it to your defined port - but i'm not sure if you need that

+0

Arbeitete wie ein Charme! Ich danke dir sehr! Es hat mit SQLSRV32.EXE dlls funktioniert. Zuerst hatte ich einen ODBC-Fehler, also musste ich den ODBC-Treiber 11 für SQL Server (msodbcsql.msi) installieren. –

+0

Oh yeah, vergessen zu erwähnen, falls irgendjemand nach der gleichen Lösung sucht: die Antwort von sintakonte sagt "172.0.0.1" muss natürlich in "127.0.0.1" oder "localhost" geändert werden :) –

+0

es war ein Tippfehler - Danke für den Hinweis - ich habe die Antwort aktualisiert;) – sintakonte