Hallo,
im WC gibt es doch die Reloadsperre für den Warenkorb.
Wie kann ich das bei form-Abfragen nachbauen?
Konkret:
ich habe ein Script, dass einen bestimmten Formularwert abfragt
my $mode = ssp::get_var_form("mode");
if ($mode eq "new") {
utils::mail();
}
also wenn der im Formular übergebene Wert "new" ist, wird eine Mail versandt.
Wie kann ich verhindern, daß die Mail bei jedem Seitenreload (oder F5) nochmals gesendet wird?
Nachtrag:
Lösung gefunden - funktioniert zwar, aber ich bin nicht sicher, ob das so korrekt ist?
Habe als "Benutzerdaten OK" Seite eine Dummyseite eingetragen, auf der nur das steht
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<!--spmacro:include(online_editor_modul_0_2/inc/oe_new.ipl)--> ### = Daten in DB schreiben
<!--spmacro:module(test)
sub test { ### mail versenden
use online_editor_modul_0_2::inc::utils;
my $mode = ssp::get_var_form("mode");
if ($mode eq "new") {
utils::mail();
}
}
-->
__test::test__
<META HTTP-EQUIV="REFRESH" CONTENT="0; URL=http://__xxpath__?show1290000051,__xxsession__"> ### auf Zielseite weiterleiten
</head>
</html>
die Mail wird also auf dieser Seite abgesendet (und die DB-Einträge gemacht) und dann sofort - hoffentlich ohne dass der Kunde es überhaupt merkt - auf die eigentliche Zielseite weitergeleitet.
Hier kann man jetzt so oft man will reloaden OHNE die mail erneut abzusenden.
aber funktioniert das META HTTP-EQUIV="REFRESH" wirklich zuverlässig?
gibt es dafür nicht doch eine bessere Lösung?
Linkback: https://www.shoppilot.net/pf/index.php?topic=1234.0