2009-03-24 12 views
0

Kennt jemand eine Möglichkeit, zu verhindern, dass der Browser den Benutzer auffordert, Formularinformationen erneut zu senden.Verhindern, dass Browser Formulardaten erneut sendet

Ich weiß, dass Sie den Browser umleiten mit:

<php 
    header("location http://example.com"); 
?> 

Aber das scheint so ineffizient und dauert 2 Anfrage.

Ich hoffe, Sie können helfen.

Duplikat: How do I stop the Back and Refresh buttons from resubmitting my form?

+0

Bitte erläutern Sie das Problemszenario genauer. Was genau passiert, was der Benutzer tut und welches Verhalten er erhalten möchte. –

Antwort

5

Entweder wie Ihr Beispiel umleiten oder AJAX verwenden Sie das Formular an erster Stelle einzureichen. Der Browser hat keine Möglichkeit, dieselbe Seite anzufordern, ohne dieselbe Seite anzufordern.

Wenn Sie die Daten nicht erneut einreichen, werden Sie aufgefordert, eine andere Seite anzufordern.

5

Soweit ich weiß, gibt es nichts, was Sie wirklich tun können, wenn es um dieses Verhalten in POST-Anfragen geht. Die Umleitung, vielleicht scheinbar ineffizient, ist eigentlich der beste Weg, dies zu tun. Sie teilen dem Browser mit, dass Sie alle für die Postanforderung erforderlichen Arbeiten ausgeführt haben, und jetzt senden Sie sie an eine Seite, die sich nie ändert, egal wie oft Sie sie aufrufen, so dass sie problemlos mit einem Lesezeichen versehen werden kann wiederverwendbar.

Verwandte Themen