Apache/Installation de MS-SQL pour PHP
On distingue plusieurs pilotes PHP pour MS-SQL Server :
Windows
modifierPour se connecter au serveur MS-SQL à partir d'un tout-en-un comme EasyPHP, il suffit de télécharger les pilotes .dll[1] correspondant à sa version de PHP, puis d'indiquer leurs chemins dans le PHP.ini :
- Sous PHP 4, copier le fichier
php_mssql.dll
dans les extensions. - Pour PHP 5.4 :
- Télécharger les .dll SQL30
- Les copier dans
C:\PROGRA~2\EasyPHP\binaries\php\php_runningversion\ext
- Les ajouter dans
C:\PROGRA~2\EasyPHP\binaries\php\php_runningversion\php.ini
via les lignes suivantes[2] :extension=php_sqlsrv_54_ts.dll
extension=php_pdo_sqlsrv_54_ts.dll
- Dans PHP 5.5 on obtient toujours
Fatal error: Call to undefined function sqlsrv_connect()
, donc upgrader ou downgrader PHP. - Dans PHP 7 : cela fonctionne.
Pour vérifier l'installation, redémarrer le serveur Web, puis vérifier que la ligne pdo_sqlsrv
s’est bien ajoutée dans la configuration (ex : http://127.0.0.1/home/index.php?page=php-page&display=extensions
).
Linux
modifierPour se connecter au serveur MS-SQL, il suffit de télécharger les pilotes .so[3] correspondant à sa version de PHP, puis d'indiquer leurs chemins dans le PHP.ini[4] :
extension=php_pdo_sqlsrv_7_nts.so
extension=php_sqlsrv_7_nts.so
Pour vérifier l'installation, redémarrer le serveur Web, puis vérifier que la ligne pdo_sqlsrv
s’est bien ajoutée dans la configuration (ex : php -r "phpinfo();" |grep sql
).
Paquets
modifierUne alternative consiste à utiliser le gestionnaire de paquets[5] :
pecl install sqlsrv
pecl install pdo_sqlsrv
Si les pilotes sont introuvables ensuite, il faut certainement désinstaller "unixodbc".
Références
modifier- ↑ http://www.microsoft.com/en-us/download/details.aspx?id=20098
- ↑ http://www.php.net/manual/fr/ref.pdo-sqlsrv.php
- ↑ https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server
- ↑ https://www.barryodonovan.com/2016/10/31/linux-ubuntu-16-04-php-and-ms-sql
- ↑ https://github.com/Microsoft/msphpsql