phpbar.de logo

Mailinglisten-Archive

[php] Header location / Post Method ?

[php] Header location / Post Method ?

SvenFuchs_(at)_t-online.de SvenFuchs_(at)_t-online.de
Mon, 19 Feb 2001 16:25:48 +0100


Hi there.

Sorry, ich vermute, die Frage wurde bereits x Mal geklärt. Ich habe die
Antwort im Archiv aber leider nicht finden können.

Mein Problem:

Ich leite nach einem POST request an mein Script an eine andere Adresse per
header ("Location: " . $redirect ); weiter. Dieser Redirect kommt behält so
wie's aussieht dummerweise die POST Methode bei, so daß die Seite, an die
weitergeleitet wird, vom Browser als temporäre Seite angesehen wird und bei
einem Reload z.B. der IE die Frage stellt, ob ich die "Daten neu senden"
will ...

Noch mal als Beispiel:

<form action="index.php" method="post">
<input type="hidden" name="act" value="do_edit_document">
...

sendet also einen POST request an das Script index.php

index.php tut irgendwas und schickt einen header ("Location:
index.php?act=view_document") oder ähnlich an den Browser.

Diese Seite wird nun scheinbar nicht mit der GET Methode aufgerufen, sondern
ebenfalls mit POST. (Erkennbar daran, daß in der URL Zeile des Browsers
lediglich index.php, nicht aber die Parameter stehen, und wenn man auf den
Reload-Button klickt, die Frage kommt, ob man die "Daten erneut senden"
will.

So. Das will ich natürlich anders haben. Diejenige Seite, an die ich mit
header ("Location: ...") weiterleite, soll mit GET aufgerufen und ganz
normal gechached werden.

Aber wie stelle ich das an? Kann mir jemand weiterhelfen?

Ich dachte, es gäbe vielleicht ein entsprechendes Http Header-Feld, mit dem
man die Methode von POST auf GET umschalten kann o.ä., aber in der
entsprechenden Doku bin ich dazu nicht fündig geworden.

Dankbar für jeden Hint,
Sven Fuchs



php::bar PHP Wiki   -   Listenarchive