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...
Der MS-SQL-Teil der php.ini sieht so aus:
Der Script zum Connect sieht so aus:
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...
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: