2011-05-23 4 views
2

Nous utilisons MSSQL Server 2008 sur le serveur Win 2008 R2 et avons installé Apache (2.2.19) et PHP (5.2.17) séparément. Nous avons installd le module MSSQL pour PHP et usingthe suivant chaîne de connexion:Connexion au serveur MSSQL 2008 avec PHP

$myc = mssql_connect(Server, SiteDatabaseUsername, SiteDatabasePassword) or die('Can\'t connect to mssql Database Server: '.mssql_get_last_message($myc)); 
$db = mssql_select_db(SiteDatabaseName, $myc) or die('Can\'t find database: '.mssql_get_last_message($myc)); 

Mais il nous donne cette erreur:

Warning: mssql_connect() [function.mssql-connect]: Unable to connect to server: localhost\MSSQLSERVER in D:\Apache2.2\htdocs\adminarea\_core.php on line 89 
Can't connect to mssql Database Server: 

Nous avons utilisé le IP:PORT, localhost\MSSQLSERVER et COMPUTERNAME\MSSQLSERVER mais ne semblent pas arriver à n'importe où, quelqu'un peut-il vous aider s'il vous plaît?

+0

Avez-vous essayé d'installer les nouveaux pilotes SQLSRV de Microsoft, car MSSQL n'est plus supporté? De plus, 'phpinfo()' confirme-t-il la disponibilité du pilote pour PHP? – Kalessin

+0

Essayez de regarder le ntwdblib.dll - voir cette réponse: http://stackoverflow.com/a/470036/327074 – icc97

+0

En fait, il semble que cette question est juste une copie de http://stackoverflow.com/questions/469964/ impossible de se connecter à mssql-database-via-php – icc97

Répondre

1

Quelques choses viennent à l'esprit:

1) Assurez-vous que le package pilote sqlsrv de MS, et assurez-vous que vous chargez correctement dans php.ini (utilisation phpinfo() pour vérifier).

2) S'il s'agissait d'une installation vanillée de SQL Server, il est probable que seule l'authentification Windows est activée. Ouvrez le SQL Enterprise Manager et assurez-vous que l'authentification SQL Server est activée sur votre base de données.

3) Assurez-vous que vous avez activé l'accès réseau à SQL Server. Je ne suis pas immédiatement certain que les nouveaux pilotes MS utilisent des canaux nommés pour communiquer avec le serveur, ou s'ils s'attendent à ce que le serveur soit accessible via le réseau.

Ce sont les problèmes que je rencontre régulièrement lorsque PHP parle à un nouveau serveur MSSQL.