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

POST-Daten einer "fremden" Seite entgegen nehmen

polymer

Neues Mitglied
Guten Tag

Ausgangslage:
Ich habe für eine Firma ein kleines CMS gebastelt, welches ich leicht abgeändert jetzt auch der "Partnerfirma" verkaufen konnte. Pro Homepage existiert jeweils eine Datenbank mit den verfügbaren Produkten, welche von den jeweiligen Seiten aufgerufen und durchsucht werden kann.

Problem: Ich möchte nun einbauen, dass bei einer Suche ohne Ergebnisse ein Link erscheint, welcher beim anklicken dieselbe Suche auf der anderen Seite durchführt (i.e. einige POST-Variablen an die andere Seite weitergibt). Dies ist für mich insofern ein Problem, als dass die andere Seite auf einem anderen Server liegt welcher offenbar keine "fremden" POST-Formulare akzeptiert.

Dass der Server dies nicht einfach so akzeptiert, finde ich logisch und beruhigend (wegen Missbrauch etc.), aber da ich ja von beiden Seiten der Entwickler bin und daher den Quellcode verändern kann, müsste ich doch die jeweils andere Seite irgendwie als "legaler Formularsender" angeben können??

Könnt ihr mir weiterhelfen?

Vielleicht braucht ihr diese Infos (schematisch):
SEITE A: URL von Anbieter1; Webserver von Anbieter2
SEITE B: URL von Anbieter3; Webserver von Anbieter4
Gewünscht: <form method="POST" action="www.seiteA.com/somepage.html"> von Seite B aus.

Danke schonmal!

Liebe Grüsse, polymer

PS: Dass das Problem beim "nicht akzeptieren" liegt, nehme ich an, weil bei meinem derzeitigen Code eine "Fehlerseite" von Anbieter2 angezeigt wird (normalerweise müsste allerdings eine eigene Fehlerseite von meiner Seite kommen, falls somepage.html nicht gefunden wird...)
 
Dürfte das nicht serverseitig mit PHP und GET-Variablen machbar sein?

Ich denke da an etwa das in der Datei von Seite B:
PHP:
<?php

$fremderRequest = file_get_contents("http://www.seiteA.com/abfrage-datei.php?suchworter=abc+cde+f");

if($fremderRequest != ""){
    echo $fremderRequest;
}

?>
Die Datei, welche auf Server A die Abfrage der Suchergebnisse ausführt, dürfte doch auch von Seite B aus aufgerufen werden.
Kenne mich da jetzt nicht so aus, aber ich denke Server unterscheiden nicht zwischen einem normalen Client oder einem Server, welchern einen HTTP-Request erstellt.

Edit:
Ich glaube ich habe mich nicht verständlich genug ausgedrückt. Auf Seite B sucht ein Besucher etwas. Die Datei, welche die Suche durchführen soll, erstellt einen Request mit GET-Variablen an Server B. Dieser sendet entweder Suchergebnisse oder garnichts zurück.
 
Erst mal danke für deine Antwort!

Dürfte das nicht serverseitig mit PHP und GET-Variablen machbar sein?

Mmh - eigentlich wollte ich den Einsatz von GET-Variablen vermeiden, aber wenns nicht anders geht würde es drin liegen...

Edit:
Ich glaube ich habe mich nicht verständlich genug ausgedrückt. Auf Seite B sucht ein Besucher etwas. Die Datei, welche die Suche durchführen soll, erstellt einen Request mit GET-Variablen an Server B. Dieser sendet entweder Suchergebnisse oder garnichts zurück.
Das würde sicherlich klappen. Allerdings wäre damit mein Problem nicht gelöst. Von Seite B aus die Suchresultate von Seite A zu erhalten klappt bestimmt so wie dus mir vorgeschlagen hast. Allerdings könnte ich das auch viel einfacher haben, da ich ja auch direkt auf die andere DB zugreifen könnte...

Ich möchte aber nicht die Suchresultate von A auf Seite B anzeigen, sondern den Besucher ganz auf die Seite A "weiterreichen", so dass dann auch die Resultate auf Seite A angezeigt werden (anderer Header, anderes CSS, etc...).

Oder habe ich dich falsch verstanden?

Für weitere Hilfe wäre ich sehr dankbar!

Liebe Grüsse, polymer
 
Ich möchte aber nicht die Suchresultate von A auf Seite B anzeigen, sondern den Besucher ganz auf die Seite A "weiterreichen", so dass dann auch die Resultate auf Seite A angezeigt werden (anderer Header, anderes CSS, etc...).
Tut mir Leid, habe dich wohl missverstanden.

Soll also eine zweite Seite (A) geöffnet werden, mit den Suchergebnissen?

Mit JavaScript und GET-Variablen ist das sicherlich möglich. Ob man mit JavaScript den HTTP-Header bis auf die POST-Variablen modifizieren kann weiss ich leider nicht. Vielleicht meldet sich dafür hier noch jeamand, denn mit JS habe ich nicht viel am Hut.
 
Soll also eine zweite Seite (A) geöffnet werden, mit den Suchergebnissen?

Ja genau das wäre die Idee. Der Benutzer sollte genau am gleichen Ort landen als hätte er die Suche von Seite A aus gestartet (ob neues Fenster oder nicht ist ja dann nur kleines Detail...)
Wäre wirklich toll wenn mir da jemand weiterhelfen könnte.

Liebe Grüsse, polymer
 
Zurück
Oben