mssql_connect: Fehler bei unterschiedlichen Standorten

Xaicon

Erfahrenes Mitglied
Hallo zusammen,

ich habe bei der Programmierung eins Klassifikationssystems in einem Firmennetz, nach IP-Adresse den Standort aufgeschlüsselt.
Der Webserver selber steht an einem Standpunkt (Westerham), und schreibt die Daten in die MS-SQL-Datenbank des Servers entsprechend dem Standort des Clients.
z.B. Client sitzt in München, greift auf den Webserver (Westerham) zu, welcher die Datenbank in München mit den Datensätzen befüllt.
Datenbankname, Benutzername und Passwort sind an allen drei Standorten gleich, und der Benutzer hat auch die erforderlichen Rechte.

Der mssql_connect() funktioniert aber nur noch bei dem MS-SQL-Server am Standort Westerham (gleicher Standort wie der Webserver).
Beim Connect zu den anderen MS-SQL-Server wird "Unable to connect to server: ..." zurückgegebene.

Mein Test-Webserver (gleicher Standort wie der 'richtige' Webserver) kann auf alle MS-SQL-Server zugreifen, nur nicht auf den am hiesigen Standort.

Somit kann es nicht die Netzwerkverbindung zwischen den Standorten sein, und die Servernamen stimmen auch.
Per Enterprise-Manager kann ich auf alle Server zugreifen. Dadurch schliesse ich einen allgemeinen Serverfehler und falsche Benutzerdaten aus.

Ich bin ratlos. Besonders weil es eine Zeit funktionierte, nur ab einem unbekannten Zeitpunkt nicht mehr. (wer weiss was welcher Kollege verbrochen hat?;))
Hat jemand von Euch eine Idee, an welchem Hinderniss dieses Vorhaben scheitern könnte?

EDIT: hat sich erledigt... Es lag an einem Felher in der Anmeldumg zum PDC, und somit fehlende Rechte... :rolleyes:

Der MS-SQL-Teil der php.ini sieht so aus:
Code:
[MSSQL]
mssql.allow_persistent = On
mssql.max_persistent = -1
mssql.max_links = -1
mssql.min_error_severity = 10
mssql.min_message_severity = 10
mssql.compatability_mode = Off
;mssql.textlimit = 4096
;mssql.textsize = 4096
;mssql.batchsize = 0
mssql.secure_connection = Off
;mssql.max_procs = 25

Der Script zum Connect sieht so aus:
PHP:
<?php
$HOST_ARRAY   = array(
                   1 => "S006072",
                   2 => "S030645", 
                   3 => "S005737", 
                );
    if(substr($_SERVER["REMOTE_ADDR"],0,7)  == "172.16.")     {$standort = 1;} //Westerham
elseif(substr($_SERVER["REMOTE_ADDR"],0,11) == "192.168.19.") {$standort = 2;} //Lauenstein
elseif(substr($_SERVER["REMOTE_ADDR"],0,11) == "192.168.15.") {$standort = 3;} //Muenchen
$DB_HOST       = $HOST_ARRAY[$standort];
$DB_NAME       = "SPINNER2000V4";
$DB_USER       = "sa";
$DB_PASS       = "*******";
if(!$DB_CONNECT    = @mssql_connect($DB_HOST, $DB_USER, $DB_PASS)){echo "Datenbankserver (".$DB_HOST.") nicht erreichbar<br>\n";}
if(!$DB_SELECTED   = @mssql_select_db($DB_NAME)){echo "Datenbank wurde nicht gefunden<br>\n";}
?>
 
Zuletzt bearbeitet:
In den letzten beiden Zeilen des PHP-Codes steht

.... @mssql_connect ...
und
... @mssql_select_db ...

Es müsste doch jeweils mysql_ heißen...
Liegts vielleicht daran?
 
eiisa hat gesagt.:
In den letzten beiden Zeilen des PHP-Codes steht

.... @mssql_connect ...
und
... @mssql_select_db ...

Es müsste doch jeweils mysql_ heißen...
Liegts vielleicht daran?
Danke für Deinen Post, aber leider ist es nicht so.
Es handelt sich hierbei um MS-SQL und nicht um eine MySQL Datenbanken.
Darum ist mssql_... der richtige Syntax.
 
Zurück