0
votes

Extension SQL Server ne fonctionne pas dans PHP V7.4.8

Je mettais donc la mise à jour de nos serveurs Web (Windows 2012 R2 / IIS) avec la nouvelle version de PHP ce matin (version 7.4.8 de 7.4.6, parce que je me relevais il y a 2 semaines).

Dans notre configuration, nous incluons la DLL à partir de Microsoft (php_pdo_sqlsrv_74_nts.dll) dans le dossier EXT, car nous disposons de certains sites d'exécution de certaines recherches de PDO à certains serveurs SQL backend. Après avoir enregistré la nouvelle version, j'ai commencé à obtenir des erreurs dans ces appels PDO (PDO est en cours de chargement), mais je ne trouve pas de conducteur. Dès que je retourne à 7.4.6, tout est chargé.

Je n'ai pas vu de nouveau fichier fourni à partir de Microsoft. Est-ce que quelqu'un d'autre a vu ce comportement ou une solution pour cela?

merci,


3 commentaires

Je m'attendrais à ce qu'un système Windows utilise la version sécurisée de fil d'une DLL?


Où avez-vous reçu une version 7.4.8? La dernière disponible sur la page d'accueil PHP est de 7.4.7.


windows.php.net/download , la version actuelle est 7.4.8 publiée le 7/7/20


4 Réponses :


0
votes

car il pourrait y avoir plusieurs versions PHP côte à côte.

1.Veuillez vous assurer que votre gestionnaire IIS php-cgi pointe vers la version droite.

2. Veuillez vous assurer que vous avez copié la DLL dans le dossier EXT droit

3. Veuillez vous assurer que vous avez défini la bonne extension_dir

4.Veuillez vous assurer que vous avez enregistré l'extension = ..... correctement.

5.Veuillez faire un IISRESET lorsque vous avez fini de mettre à jour la configuration.

Vous pouvez essayer de double-cliquer sur php-cgi.exe pour vérifier l'exception réelle. Si tout est réglé correctement, il pourrait y avoir une question de compatibilité.


2 commentaires

Tout est pointé dans la bonne direction et enregistré correctement. Bonne liste à suivre. J'ai testé ce matin et tout fonctionne correctement dans la version 7.4.7, alors quelque chose a changé en 7.4.8 qui provoque une question.


Avez-vous essayé de double-cliquer sur php-cgi.exe pour vérifier l'exception réelle? S'il y a un problème, il devrait y avoir un message d'erreur. Avez-vous rencontré un message d'erreur?



0
votes

Avez-vous essayé de double-cliquer sur php-cgi.exe pour vérifier le réel exception? S'il y a un problème, il devrait y avoir un message d'erreur. Avoir Vous avez rencontré n'importe quel message d'erreur?

Aucune erreur après double cliquant sur PHP-CGI.EXE


1 commentaires

Merci de me le rappeler cela, mais je trouve quelque chose qui fabrique aussi peu de sens. L'erreur que je reçoive est le point d'entrée de procédure zval_ptr_dtor n'a pas pu être situé dans la bibliothèque de liaison dynamique php_pdo_sqlsrv_74_nts.dll



0
votes

Étant donné que j'avais plus d'une version PHP Installation.Je devait spécifier le dossier d'extension spécifique dans mon fichier PHP7.4.8 INI. i.e.extension_dir = "C: /php7.4/ext"

Tout a fonctionné bien après que


1 commentaires

Je le définis toujours avec le chemin complet.



0
votes

Cela a finalement été fixé dans la version 7.4.10. C'était une erreur peu connue qu'il semble, mais ils l'ont été fixée.


0 commentaires