2011-02-03 10 views
1

PHPを使用してローカルのSQL Server 2008 R2に接続しようとしています。私はphp_mssqlとmssql_connect()をサポートしているPHP 5.1を使用しています。PHPでSQL Serverに接続する際に問題が発生する

何らかの理由でPHPが自分のサーバを見つけられない場合は、ODBCを介して完璧に接続できますが、SQL Serverに直接接続したいと考えています。

私はPHPをSQL Serverに何百万回も接続していますが、これは私には唯一の問題です。

これは接続を試してみるための小さなテストコードです。

//define connection garbage 
$db['hostname'] = "USER90C6\SQLEXPRESS"; 
$db['username'] = "user"; 
$db['password'] = "password"; 
$db['database'] = "kal_auth"; 

//connection string 
$conn = mssql_connect($db['hostname'], $db['username'], $db['password']); 


//does it work? :o 
if($conn) 
{ 
    echo "works"; 
} 
else 
{ 
    echo "fails"; 
} 

エラーこのコードが生成されます。

Warning: mssql_connect() [function.mssql-connect]: Unable to connect to server:  USER90C6\SQLEXPRESS in C:\xampp\htdocs\test.php on line 9 
fails 

は私のセットアップと真剣に何か問題はありますか?または私は何かが欠けている。

+0

mssqlの拡張機能はオンになっていますか? – Karthik

+1

SQLサーバーはTCP接続を許可するように構成されていますか?デフォルトではそうではありません。 –

+0

@Marc B彼はデフォルトで "ローカルサーバー"と言っていましたが、問題があるかもしれませんが、R2はリモートTCP接続を防ぎます。 – RobertPitt

答えて

0
  • サーバの設定ツールでTCP/IPを有効にしましたか?
  • ファイアウォールは使用しているポートをブロックしていますか?
  • MDAC(microsoft data access components)は更新されていますか?
  • php.iniのmssql.secure_connectionターンオン
0

私はあなたが何かを逃してはいけないと思います...あなたの接続文字列(あなたが「接続できません」エラーが表示される。)右のようです。 私の意見では、問題はバージョンの非互換性またはユーザー権限の間違いになる可能性があります。まず、PHPで使用しているDLLドライバを見て、MSSQLのバージョンとの互換性を確認してください。 可能であれば、最新の安定したリリースで新しいPHPをインストールすることをお勧めします。見てください:http://www.php.net/manual/en/mssql.requirements.php

幸運。

関連する問題