Hi,
normalerweise verwende ich immer Apache, PHP und MySQL, aber
in diesem speziellen Fall benötige ich eine Anbindung an eine Microsoft
SQL Server Datenbank.
Mein Problem ist, dass ich die Microsoft SQL-Server LIB nicht zum laufen bekomme.
MSSQL-PHP-Funktionen sind überhaupt nicht verfügbar.
Habe folgende Software aktuell auf meinem Rechner laufen:
OS: Windows 2003 Server Standard + aktuelle Patches
Firewall: momentan keine, da dass Patchkabel gezogen ist.
Apache: apache_2.0.54 no ssl
PHP: php-5.0.4
MSSQL: SQL Server 2000 Evaluation
PHP habe ich schon als CGI und als Apache Modul eingebunden.
MSSQL-Server Versionen habe ich folgende getestet:
- MSSQL Server 7 Vollversion
- MSSQL Server 2000 Evaluation
- MSSQL Server 2005 Beta 2
Immer hatte ich keinen Erfolg.
Meine vorgehensweise bei der letzten Installation:
1. Apache mittels MSI-Installer(apache_2.0.54-win32-x86-no_ssl.msi)
nach "C:\Programme\Apache Group\Apache2" installiert.
2. PHP als Modul in Apache eingefügt
-> Zip-Datei(php-5.0.4-Win32.zip) nach "c:\php" entpackt
-> "php.ini-recommended" in %windir%\system32 kopiert
und in "php.ini" umbenannt.
-> in der "httpd.conf" folgende Einträge hinzugefügt:
LoadModule php5_module "c:/php/php5apache2.dll"
AddType application/x-httpd-php .php
PHPIniDir "C:/php"
-> PHP mittels phpinfo()-Script getestet -> funzt
3. MS SQL-Server 2000 Eval installiert
-> bei der Installation alle Komponenten und Tools
ausgewählt -> auch die Clienttools sind komplett
installiert.
4. in der PHP.ini, die sich unter %windir%\system32 befindet
das Semikolon vor der Zeile
extension=php_mssql.dll
entfernt. Ansonsten alles andere gelassen.
5. MSSQL-Connect-PHP Script mit folgendem Inhalt getestet
<?php
if($db = mssql_connect("Server","Username","Password"))
{
echo "OK";
} else {
echo "Fehler";
}
?>
Ergebnis:
Fatal error: Call to undefined function mssql_connect() in C:\Programme\Apache Group\Apache2\htdocs\test\mssql.php on line 2
6. Habe gelesen, dass einer Erfolg hatte, als er die Datei
"ntwdblib.dll" von der SQL-Server CD in das PHP und
Windows System32-Verzeichnis kopiert hatte.
Datei also an beiden stellen überschrieben -> Apache
neu gestartet.
Die bei PHP mitgelieferte "ntwdblib.dll" hatte folgendes Erstellungs-
datum: 14.01.1999 19:27, die vom SQL-Server 2000 Eval hatte als
Erstellungsdatum: 17.08.2000 15:54 Uhr.
Habe zum Schluss auch nochmal in das Sys32 und PHP-Verzeichnis,
die mitgelieferte DLL von PHP eingespielt und Apache neu
gestartet. -> keine Chance.
Ergebnis:
genau der selbe Fehler.
Wenn ich mir die PHPINFO-Seite anzeigen lasse, habe ich dort keinen Punkt MSSQL stehen, aber
# Environment #
PATH C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Programme\Microsoft SQL Server\80\Tools\BINN
# PHP Variables #
_SERVER["PATH"] C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Programme\Microsoft SQL Server\80\Tools\BINN
_ENV["PATH"] C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Programme\Microsoft SQL Server\80\Tools\BINN
Benötige dringend eure Hilfe.
Grüße
Arndt
normalerweise verwende ich immer Apache, PHP und MySQL, aber
in diesem speziellen Fall benötige ich eine Anbindung an eine Microsoft
SQL Server Datenbank.
Mein Problem ist, dass ich die Microsoft SQL-Server LIB nicht zum laufen bekomme.
MSSQL-PHP-Funktionen sind überhaupt nicht verfügbar.
Habe folgende Software aktuell auf meinem Rechner laufen:
OS: Windows 2003 Server Standard + aktuelle Patches
Firewall: momentan keine, da dass Patchkabel gezogen ist.
Apache: apache_2.0.54 no ssl
PHP: php-5.0.4
MSSQL: SQL Server 2000 Evaluation
PHP habe ich schon als CGI und als Apache Modul eingebunden.
MSSQL-Server Versionen habe ich folgende getestet:
- MSSQL Server 7 Vollversion
- MSSQL Server 2000 Evaluation
- MSSQL Server 2005 Beta 2
Immer hatte ich keinen Erfolg.
Meine vorgehensweise bei der letzten Installation:
1. Apache mittels MSI-Installer(apache_2.0.54-win32-x86-no_ssl.msi)
nach "C:\Programme\Apache Group\Apache2" installiert.
2. PHP als Modul in Apache eingefügt
-> Zip-Datei(php-5.0.4-Win32.zip) nach "c:\php" entpackt
-> "php.ini-recommended" in %windir%\system32 kopiert
und in "php.ini" umbenannt.
-> in der "httpd.conf" folgende Einträge hinzugefügt:
LoadModule php5_module "c:/php/php5apache2.dll"
AddType application/x-httpd-php .php
PHPIniDir "C:/php"
-> PHP mittels phpinfo()-Script getestet -> funzt
3. MS SQL-Server 2000 Eval installiert
-> bei der Installation alle Komponenten und Tools
ausgewählt -> auch die Clienttools sind komplett
installiert.
4. in der PHP.ini, die sich unter %windir%\system32 befindet
das Semikolon vor der Zeile
extension=php_mssql.dll
entfernt. Ansonsten alles andere gelassen.
5. MSSQL-Connect-PHP Script mit folgendem Inhalt getestet
<?php
if($db = mssql_connect("Server","Username","Password"))
{
echo "OK";
} else {
echo "Fehler";
}
?>
Ergebnis:
Fatal error: Call to undefined function mssql_connect() in C:\Programme\Apache Group\Apache2\htdocs\test\mssql.php on line 2
6. Habe gelesen, dass einer Erfolg hatte, als er die Datei
"ntwdblib.dll" von der SQL-Server CD in das PHP und
Windows System32-Verzeichnis kopiert hatte.
Datei also an beiden stellen überschrieben -> Apache
neu gestartet.
Die bei PHP mitgelieferte "ntwdblib.dll" hatte folgendes Erstellungs-
datum: 14.01.1999 19:27, die vom SQL-Server 2000 Eval hatte als
Erstellungsdatum: 17.08.2000 15:54 Uhr.
Habe zum Schluss auch nochmal in das Sys32 und PHP-Verzeichnis,
die mitgelieferte DLL von PHP eingespielt und Apache neu
gestartet. -> keine Chance.
Ergebnis:
genau der selbe Fehler.
Wenn ich mir die PHPINFO-Seite anzeigen lasse, habe ich dort keinen Punkt MSSQL stehen, aber
# Environment #
PATH C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Programme\Microsoft SQL Server\80\Tools\BINN
# PHP Variables #
_SERVER["PATH"] C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Programme\Microsoft SQL Server\80\Tools\BINN
_ENV["PATH"] C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Programme\Microsoft SQL Server\80\Tools\BINN
Benötige dringend eure Hilfe.
Grüße
Arndt
Kommentar