Externe Webseiten auslesen, bearbeiten und in einer zweiten Seite ausgeben.

kramoo

Mitglied
Habe folgende Aufgabenstellung bei der ich nicht ganz weiterkomme und eure Hilfe brauche.

Möchte eigene externe Seiten in meiner Seite einlesen und die darin enthaltenen Formularfelder aus meiner Datenbank befüllen lassen. Die externe Seite beinhaltet ein mehrseitiges Formular daher muss die funktion der Seite gegeben sein.

1.)
Zuerst habe ich mir gedacht das kann man einfach mit file_get_content lösen. Da das Formular aber mehrseitig ist geht das wohl nicht.

2.)
Es wird wohl nur das Einbinden mittels Iframe gehen oder? Da weiß ich allerdings nicht wie ich es schaffe die Daten von der Datenbank in das Iframe und das darin angezeigte Formular zu bekommen. So viel ich weiß kann man von ausserhalb nicht in das Iframe schreiben oder ändern bzw. hat keinen Zugriff!?

Kennt jemand hier eine möglichkeit wie das gehen könnte ?
Danke
 
PHP kennt keine iframes, denn die sind nur für den Browser bekannt. Wenn du das über iframes machen willst, brauchst du eine Browser-seitige Sprache wie JavaScript. Wenn du das über PHP machen willst, kannst du es mit curl versuchen.
 
Lieber wäre es mir mit PHP aber geht es mit z.B. curl da es ja mehrseitige Formulare sind das heißt auf der ersten Seite werden Daten eingelesen vom Server dann clickt man auf weiter dann wird ja die zweite Seite geladen usw. wie kann man das mit PHP umsetzen.

Man müsste den click auf weiter die url abfangen und die abgefangene Url dann mit curl laden und bearbeiten und dann ausgeben können. Ob das technisch möglich ist?
 
mit curl baust du einen Browser nach, sprich du müsstest für jedes Formular einen neuen curl-Request an den Server senden und die Rückgabe neu auswerten. Ich vermute, das Formular der Gegenseite wird über Session die Daten an das nächste Formular übermitteln.

Du kannst alle Formular über ein PHP-Script (und über einen Request deines Scripts) realisieren. Hier die Vorgehensweise in Pseudo-Code:

PHP:
$url = "http://www.test.de/formular1.php";
$curl = curl_init();
curl_setopt($curl, $url);
.. weitere curl-Aktionen ..
curl_exec($curl);
curl_close($curl);

$url = "http://www.test.de/formular2.php";
$curl = curl_init();
curl_setopt($curl, $url);
.. weitere curl-Aktionen ..
curl_exec($curl);
curl_close($curl);

... usw ...
 
Danke.
Das problem ist aber noch das die ULR's vorher nicht bekannt sind und unterschiedlich lauten können. Auch der button muss nicht weiter heißen sondern kann verschiedene Namen haben.

Es werden also verschiedene externe Seiten geladen mit verschiedenen Formularstrukturen.
 
Zurück