2011-10-25 4 views
2

J'ai un script php qui se connecte à SQL Server, localement cela fonctionne très bien parce que je pouvais éditer le fichier php.ini pour inclure l'extension pour php_mssql.dll. Avec le serveur de production, ce serait bien si je n'avais pas besoin de redémarrer le serveur, donc est-il possible d'ajouter le php_mssql.dll au début du script? Sinon, comment puis-je vérifier sur le serveur (linux) pour voir si le fichier php_mssql.dll est disponible si je devais l'ajouter dans la section des extensions dynamiques de php.ini?SQL Server se connecter avec PHP

Répondre

0

Pour tester si l'extension MSSQL est chargé, utilisez extension_loaded():

if (extension_loaded("php_mssql")) {} 

Notez que sous Linux, il ne sera pas un .dll, mais plutôt une bibliothèque d'objets .donc partagé, et les connexions à MSSQL nécessitera probablement l'activation des librairies FreeTDS sur le serveur Linux.

1

Vous pouvez utiliser la fonction dl() pour charger le plug-in dynamiquement lors de l'exécution:

<?php 

if (!extension_loaded('php_mssql')) { 
    dl('php_mssql.dll'); 
} 

Notez que cela a été désactivé en PHP 5.3 lors de l'exécution en mode SAPI (en-webserver).

+0

J'ai essayé ceci et c'est une erreur quand j'arrive à mon mssql_connect(). Existe-t-il un moyen de vérifier que le fichier nécessaire est là pour l'utiliser? Et si ce n'est pas le cas, comment pourrais-je l'obtenir? – bmbaeb

+0

'if (! Dl ('php_mssql.dll')) {die (" Impossible de charger l'extension mssql. "); } ' –

+0

Il est retourné Impossible de charger l'extension mssql. – bmbaeb

Questions connexes