Parameterübergabe zwischen PHP Seiten bzw. Skripten
Gerd Ostmann
- php
Moin allerseits,
als relativer PHP - Neuling stehe ich vor folgendem Problem:
Ein PHP-Script soll an ein weiteres Script Variablen übergeben. Dabei gibt es die folgenden Bedingungen:
Das erste Script interagiert nicht mit dem Benutzer - also kann und soll die Übermittlung nur automatisch ohne Benutzereingriff erfolgen (nicht durch Link, Formular/Submitschaltfläche o. ä.)
Die Übermittlung soll im Header, also nicht in der Adresszeile des Browsers erfolgen und dort sichtbar sein. Es entspräche also eher der 'method="post"'.
'header ("Location: $url_ziel");' scheint ja nur die Get - Methode 'header ("Location: $url_ziel?testvar=test& ... ");'zu unterstützen...
Leider kommen auch keine "Javascript-Tricks" in Frage (wie z.B. ein per 'on load' gedrückter 'Submit'-Button, da das Angebot auch in Browsern mit ausgeschalteten Scripting laufen soll (ganz zu schweigen, daß ich diese Lösung nicht besonders elegant fände ;-)...
Kennt jemand zu diesem Problem eine Lösung?
Ostmann
Moin,
- Leider kommen auch keine "Javascript-Tricks" in Frage (wie z.B. ein per 'on load' gedrückter 'Submit'-Button, da das Angebot auch in Browsern mit ausgeschalteten Scripting laufen soll (ganz zu schweigen, daß ich diese Lösung nicht besonders elegant fände ;-)...
Kurz und gut: Die richtigen Lösungen magst du nicht.
1. Alternative: Nimm Frames (nagut, nicht wirklich schön :)
2. Alternative: Ruf das zweite Skript innerhalb des ersten auf. Also sowas wie
<?php
$bla="blubb";
$bli="ble";
include("zweitesskript.php");
?>, das kannst du auch umschreiben, so dass das erste Skript selbständig POST-Requests an den lokalen Host senden kann. (Obwohl hier ein gut gezieltes virtual() oder readfile() http://www.php.net/manual/de/function.readfile.php zusammen mit den fopen-Wrappern auch genügen würde)
Dann erscheint zwar das erste Skript in der Addressleiste, aber das zweite nicht.
Für weitere unschöne Lösungen zum Addresszeilenverbiegen, siehe http://forum.de.selfhtml.org/?m=27680&t=4944. Aber zumindest die Session-Variante sollte dir gefallen.
--
Henryk Plötz
Grüße aus Berlin
Hi,
Kennt jemand zu diesem Problem eine Lösung?
also spontan würde ich auf "Session-Management" tippen. Der Benutzer (Browser) wird anhand einer ID, die als Cookie oder URL-Anhang immer mit an den Server geschickt wird, identifiziert und die ihm gehörenden Variablen werden in den Gültigkeitsbereich deiner Skripten geschrieben.
Hier mal der Link zur Session-Doku: http://www.php3.de/manual/de/ref.session.php
Viele Grüsse,
Achim