• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Problem mit Zugriff auf externe Datenbank

Status
Für weitere Antworten geschlossen.

lukeelten

Neues Mitglied
Hallo,

ich habe ein Problem mit meinem PHP Script, und zwar verwende ich für den Login bei einem Forum eine Externe Datenbank (liegt also auf nem anderen Server), aber mein Server blockt die ausgehenden Verbindungen alle, der löst den Hostnamen gar nicht auf, und eine direkte IP ist auch nicht besser. Also hab ich Versucht die Logindaten per XMLHttpRequest an den (Externen) Server zu senden und hab dort nen PHP Datei die den Login dann übernimmt, aber auch hier klappt das auflösen des Hostnamen nicht, er zeigt immer einen Error 404 und als Zielurl die meines eigenen Servers obwohl er es genau nicht sein sollte.
Woran liegt das? Kann man da was dran drehen? Kann es sein das der PHP Safe Mode das blockt? Wenn ja, warum wird der XMLHttpRequest dann auch geblockt?

MFG

lukeelten
 
Würde drauf tippen, dass der Datenbankserver keine externen Zugriffe zulässt. Hast Du beim AJAX-Versuch mit der php-Datei auf dem Datenbankserver auch den Hostname angegeben? Dann wird das als externer Zugriff gewertet. Versuch es mal mit localhost.
 
Ich hab folgenden JS Code zum senden der Daten benutzt:
Code:
JS-Code:
req.open(m,"der_datenbankserver.de/forum_login.php",true);
req.send(params);
schreibe ich beim Hostnamen http:// dazu, verweigert der Browser ein Senden und gibt ne Fehlermeldung. Ohne http:// sucht er die datei auf dem localhost.
Und bei:
PHP:
mysql-connect("der_datenbankserver.de", "user", "pass");
Versucht PHP auch immer auf den localhost zuzugreifen (was aber nicht klappt und deshalb nen Fehler erzeugt).

Mal ne Frage:
Würde es denn gehen, wenn ich die Formulardaten an eine Datei auf dem localhost sende, diese dann per Post (über fsock) an ein Script auf dem Datenbankserver, wo es dann geprüft wird? Wenn ja, kann ich da eine Meldung zurückgeben?
 
Es heißt mysql_connect (PHP: mysql_connect - Manual - mit Unterstrich). Und selbst wenn der Server auf dem die php-Datei liegt den Hostnamen nicht auflösen kann würde ein fsock ebensowenig bringen. Dann stimmen einfach die DNS-Einstellungen des Servers nicht.
 
Nun, ich hab das mit dem Post senden mal ausprobiert und war erstaunt, das klappte einwandfrei. Es liegt also nicht an der namensauflösung meines Servers. Na ja ich hab jetzt nen Weg für meinen Login. Ich danke dir für deine Hilfe.

PS: Das mit dem mysql_connect war nen Tippfehler, in der PHP Datei war die Funktion richtig geschrieben.
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben