Hallo
Ich erhalte dadurch die für mich ziemlich irritierende Meldung:
Fehler: Der Datenbankkontext wurde auf 'DB' geändert.
mssql_select_db("DB", $conn)
Warum? Ich bin doch bereits auf 'DB'.
Wieso bist du vor mssql_select_db bereits auf „DB“?
Eben wegen dem SQL-Statement mssql_select_db, das ich vor dem Aufruf der Prozedur abschicke.
In deinem ersten Posting schreibst du folgenden Code:
$conn = mssql_connect($mssqlserver, $mssqluser, $mssqlpass) or die ("Kann keine Verbindung zum MS SQL Server aufbauen");
mssql_select_db("DB", $conn) or die ("Kann keine Verbindung zur Datenbank herstellen");
>
> Was steht in der Variable `$mssqlserver`{:.language-php}?
Dort steht lediglich die IP-Adresse des Servers und der Port, also z.B. "10.10.7.12,1234"
>
> > > > Oder ist das einfach die letzte Meldung von MSSQL und damit kein Fehler?
>
> Laut deinem ersten Posting ist da ein Fehler.
>
> > Warning: mssql\_execute() [function.mssql-execute]: stored procedure execution failed in ...
>
> Welche zeile ist das? Was steht da drin?
Der Befehl mssql\_get\_last\_message() zeigt ja nur die letzte Message an, egal ob Fehler oder nicht.
Die letzte Message lautet: Der Datenbankkontext wurde auf 'DB' geändert.
Das klingt nicht nach einem Fehler.
Die Fehlermeldung wird für die Zeile genannt: $proc\_result = mssql\_execute($proc);
Um möglicherweise mehr Informationen zu erhalten, habe ich vorher ein ob\_start();
und nach der Ausführung der Prozedur
$error = ob\_get\_contents();
print\_r($error);
Merkwürdigerweise kann ich das Problem seitdem nicht mehr reproduzieren. Es tritt einfach kein Fehler mehr auf...
Du hast übrigens recht, dass ich noch eine recht alte PHP-Version verwende. Das liegt leider an einigen Modulen, die es für neuere Versionen (noch) nicht gibt und/oder noch nicht fehlerfrei laufen. Zudem wird es ziemlich aufwändig alle die Teile umzuschreiben, die mit der neueren Version nicht mehr unterstützt wird.