ich lese hier schon längere Zeit (Jahre) mit und konnte mit Hilfe der Beiträge in diesem Forum schon viele Probleme lösen. Jetzt habe ich aber ein Problem wo ich nicht weiterkomme und deshalb an dieser Stelle auch mal schreibe.
Zur Datenspeicherung aus iP-Symcon benutze ich schon seit langem eine Microsoft SQL Server Datenbank. Durch einbinden der „php_mssql.dll“ und „ntwdblib.dll“ war dies auch kein größeres Problem und funktioniert bis 2.1 prima. Mit der Beta Version 2.2 und die Umstellung auf PHP 5.3.1 funktioniert dies leider nicht mehr. Nach einiger Recherche habe ich herausgefunden das die „php_mssql.dll“ wohl PHP ab 5.3 nicht mehr unterstützt.
Dafür gibt es eine DLL von Microsoft „php_sqlsrv.dll“ in der Version 1.1 die PHP ab 5.2 unterstützen soll. Wenn ich diese in das „ext“ Verzeichnis kopiere erhalte ich im log-file aber die Fehlermeldung das die Version nicht stimmt:
>Erweiterung php_sqlsrv_53_ts_vc6.dll nicht geladen. Version stimmt nicht überein: PHP: 5.3.1, EXT: 1.1.428
das Problem ist wohl weniger die php_mssql.dll sondern die ntwdblib.dll die von der php-mssql dazu geladen wird. In verschiedenen PHP Foren wird von Problemen mit der ntwdblib (von Microsoft und wird nicht mehr gepflegt) und PHP ab 5.2 berichtet und es wird empfohlen die neue php_sqlsrv.dll zu benutzen.
Mit Beta 2.2 habe ich die Versionen 2000.2.8.0 und 2000.80.194.0 der ntwdblib ausprobiert und beim Versuch zur Datenbank zur „connecten“ erhalte ich in ips einen Fehler (oranges Ausrufungszeichen) ohne weiteren Fehlertext.
Deshalb habe ich Versucht auf die neue sqlsrv.dll umzustellen bei der ich aber die Versionsprobleme mit IPS habe. In einer „stand alone“ Installation von php 5.3.1 funktioniert diese bei mir aber.
Mit dem Versionsproblem der http.dll hatte ich auch gelesen. Da ich aber nicht weiß was man bei der php_sqlsrv patchen müßte und da die DLL generell mit php 5.3.1 funktioniert habe ich dies nicht weiterverfolgt.