PHP, MSSQL & Linux
Trois mots qui ont dû faire grincer quelques dents lorsque les gens ont essayé de les associer.
Donc voici la technique pour donner à PHP le pouvoir de se connecter à un serveur SQL Server depuis Linux CentOs.
D’abord installer le paquet : php-mssql
yum install php-mssql
Ensuite, configurer le fichier freetds.conf (placé dans /etc) en ajoutant deux sous-parties.
# Serveur SQL Server 2000 [MSSQL_SQL2000] host = ip_adress # instance par défaut port = 1433 # si pas instance par défaut, # - commenter la ligne port # - dé-commenter la ligne instance #instance = MY_INSTANCE # version relative à SQL Server 2000 tds version = 8.0 # Serveur SQL Server 2005 [MSSQL_SQL2005] host = ip_adress # instance par défaut port = 1433 # si pas instance par défaut, # - commenter la ligne port # - dé-commenter la ligne instance #instance = MY_INSTANCE # version relative à SQL Server 2005 tds version = 9.0
Après cela, on va essayer de se connecter en ligne de commande :
tsql -S MSSQL_SQL2005 -U sa
Normalement, la ligne de commande devrait vous demander un mot de passe. Ensuite, rentrer une requête pour tester, et taper un Ctrl+C pour quitter.
[billy@foo ~]$ tsql -S MSSQL_SQL2005 -U sa locale is "en_US.UTF-8" locale charset is "UTF-8" Password: 1> SELECT DB_NAME(dbid) as 'Database Name', 2> COUNT(dbid) as 'Total Connections' 3> FROM master.dbo.sysprocesses WITH (nolock) 4> WHERE dbid > 0 5> GROUP BY dbid 6> go
Dès lors, un redémarrage d’Apache suffit :
/etc/init.d/httpd restart
Et vous pouvez l’utiliser dans PHP :
<?php $hMSSQLCnx= mssql_connect('MSSQL_SQL2005', 'sa', 'password'); if(!$hMSSQLCnx) { echo 'Could not connect'; } else { echo 'Successful connection'; } mssql_close($hMSSQLCnx); ?>
Et voilà, vous voilà connecter à SQL Server depuis Linux Centos.
Lien : http://www.freetds.org/
Ajouter un commentaire