HiPiS
24.01.2004, 02:31:27
Kłopot polega na tym ze user potwierdzając wypełniony formularz i wciskający "przycisk" uruchamia skrypt generujacy emaila za pomocą funkcji mail - to działa

. Problem w tym ze taki email chwilke się generuje i jest wrazenie że strona się nie wczytuje i jeśli ktos zniecierpliwiony zrobi "dwuklik" i spowoduje ponowne uruchomienie ( a w zasadzie przerwanie generowania maila ) skryptu mail nie zostaje wysłany. Ma ktos jakiś pomysł żeby "zagrać na zwłoke" w wysyłaniem emaila zeby strona sie przeładowała , lub zabezpieczyć się przed ponownym wciskaniem "przycisku" ?
marcin96
24.01.2004, 02:52:13
poczytaj manual:
http://www.php.net/manual/en/features.conn...on-handling.php - to apropos zabezpieczenia przed naciśnięciem reload zanim wykona się cały skrypt
..natomiast zabezpieczenie antyfloodowe - może to być np: zwykłe cookie, czy po prostu.. robisz skrypt, który wysyła maila i przekierowywuje użytkownika na inną stronę, np:
[php:1:dcb65548c8]<?php
mail($adres, $_POST['temat'], $_POST['wiadomosc']);
header('Location: wyslano_email.html');
?>[/php:1:dcb65548c8]
ps. to jest chyba temat na php, a nie php pro...
HiPiS
24.01.2004, 14:05:25
Formularz
--------------------------
AKCEPTUJE onclick="parent.location.href='index.php?id=12;?>'
-------------------------
<-------- po wcisnięciu AKCEPTUJE , "strona" zostaje przez chwile na formularzu , i tu istnieje ryzyko ponownego wcisniecia przycisku
co powoduje wyświetlenie komunikatu że email nie został wysłany....
a id=12 to
--------------------------
Wsysyłanie emaila
komunikat że email został wysłany lub nie
Pokemon 202
24.01.2004, 14:07:31
jak juz jest o przyciskach to i ja zapytam - jak zablokowac go jak sie na niego juz kliknie?

?
HiPiS
24.01.2004, 14:28:23
Bardzo dobre pytanie
Pokemon 202
24.01.2004, 21:59:58
z gry online (nie mojej) o pokemonach mam to:
[php:1:d54531609c]
<form action="newrpg.php?Action=Gym&Battle=Trainer&" method="POST">
<select SIZE="1" class="DropDownList" name="UseMove" style="font-size: 8pt; font-family: Arial; line-height: 100%; width: 125; background-color: #000080; color: #FFFFFF; border: 0;">
<option name="UseMove" selected value="HORNDRILL">HORNDRILL</option><option name="UseMove" value="TOXIC">TOXIC</option><option name="UseMove" value="MIRRORCOAT">MIRRORCOAT</option><option name="UseMove" value="SOFTBOILED">SOFTBOILED</option></select>
<br /><font size=1>
<input type="hidden" name="Exc" value="0.59595000 1074977462">
<input type="hidden" name="YoOP" value="2e668e3f91f3ea4db52a8d56c556a0d5">
<input type="hidden" name="OHP" value="28298">
<input type="hidden" name="HP" value="3531">
<input type="hidden" name="MOP" value="a34c46916c53099c8038cff641c9b127">
<input type="hidden" name="Wild" value="">
<input type="hidden" name="OrgOHP" value="28298">
<input type="hidden" name="YoP" value="2e668e3f91f3ea4db52a8d56c556a0d5">
<input type="hidden" name="OrgHP" value="8125">
<input type="hidden" name="MP" value="e52ad5c9f751f599492b4f087ed7ecfc">
<input type="hidden" name="TopPkmn" value="Blissey">
<input type="hidden" name="TopLvl" value="4420">
<input type="hidden" name="TopName" value="Marik">
<input type="hidden" name="YoPk" value="b290a084e84a3e0332c918096a767bb8">
<input type="hidden" name="AntiCheat" value="Enabled">
<input type="hidden" name="Advance" value="Yes">
<input type="hidden" name="TopType" value="">
<input type="hidden" name="Against" value="43705">
<input type="hidden" name="Rage" value="">
<input type="hidden" name="RaD" value="0">
<input type="hidden" name="SuD" value="0">
<input type="hidden" name="SaS" value="0">
<input type="hidden" name="TW" value="0">
<input type="hidden" name="MRL" value="0">
<input type="hidden" name="Spee" value="0">
<input type="hidden" name="PSN" value="">
<input type="hidden" name="W" value="3">
<input type="hidden" name="Evade" value="1">
<input type="hidden" name="BegW" value="Blissey">
<input type="hidden" name="UnqThis" value="Bat4012d9b271706">
<input type="hidden" name="Against" value="43705">
<input type="hidden" name="SpecMoves" value="">
<input type="hidden" name="NRef" value="0.35494400 1074977466"><input type="hidden" name="ArrayPointer" value="1"><input type="submit" name="ForBattle" value="Attack!" SIZE="1" style="font-size: 8pt"
onclick="this.form.ForBattle.disabled=true; this.form.submit();">
</form><form action="newrpg.php?Action=Gym&Battle=Trainer&Exc=0.59595000 1074977462&" method="POST">
<select SIZE="1" class="DropDownList" name="Use" style="font-size: 8pt; font-family: Arial; line-height: 100%; width: 125; background-color: #000080; color: #FFFFFF; border: 0;"><option value="FullRestore">FullRestore</option><br /><option value="FullRestore">FullRestore</option><br /><option value="FullRestore">FullRestore</option><br /><option value="FullRestore">FullRestore</option><br /></select>
<input type="hidden" name="Exc" value="0.59595000 1074977462">
<input type="hidden" name="YoOP" value="2e668e3f91f3ea4db52a8d56c556a0d5">
<input type="hidden" name="OHP" value="28298">
<input type="hidden" name="HP" value="3531">
<input type="hidden" name="MOP" value="a34c46916c53099c8038cff641c9b127">
<input type="hidden" name="Wild" value="">
<input type="hidden" name="OrgOHP" value="28298">
<input type="hidden" name="YoP" value="2e668e3f91f3ea4db52a8d56c556a0d5">
<input type="hidden" name="OrgHP" value="8125">
<input type="hidden" name="MP" value="e52ad5c9f751f599492b4f087ed7ecfc">
<input type="hidden" name="TopPkmn" value="Blissey">
<input type="hidden" name="TopLvl" value="4420">
<input type="hidden" name="TopName" value="Marik">
<input type="hidden" name="YoPk" value="b290a084e84a3e0332c918096a767bb8">
<input type="hidden" name="AntiCheat" value="Enabled">
<input type="hidden" name="Advance" value="Yes">
<input type="hidden" name="TopType" value="">
<input type="hidden" name="Against" value="43705">
<input type="hidden" name="Rage" value="">
<input type="hidden" name="RaD" value="0">
<input type="hidden" name="SuD" value="0">
<input type="hidden" name="SaS" value="0">
<input type="hidden" name="TW" value="0">
<input type="hidden" name="MRL" value="0">
<input type="hidden" name="Spee" value="0">
<input type="hidden" name="PSN" value="">
<input type="hidden" name="W" value="3">
<input type="hidden" name="Evade" value="1">
<input type="hidden" name="BegW" value="Blissey">
<input type="hidden" name="UnqThis" value="Bat4012d9b271706">
<input type="hidden" name="Against" value="43705">
<input type="hidden" name="SpecMoves" value="">
<input type="hidden" name="NRef" value="0.35494400 1074977466"><input type="hidden" name="ArrayPointer" value="1"><br /><input type="submit" name="WhichItem" value="Use Item" SIZE="1" style="font-size: 8pt" onclick="this.form.WhichItem.disabled=true; this.form.submit();"></form>
<form action="newrpg.php?" method="POST">
</form>
[/php:1:d54531609c]
udało mi sie to wyciągnąc :/ macie to blokowanie ale ja za bardzo tego nie rozumem
showstoppa
24.01.2004, 22:09:33
problem jest prosty w rozwiazaniu - robicie layera, na nim np. tabeke, jakis gif, cos w tym stylu, poczatkowo jest to ukryte, jak kliknie user na button, layer przykrywa cala strone, jak mail sie wysle, zostaje przekierowany i tyle.
pozdrawiam
HiPiS
28.01.2004, 14:47:31
kłopot w ty ze umnie najpierw wysyła emaila , a potem przechodzi na strone....
marian8
30.01.2004, 09:32:10
[xml:1:c1e23d510c]<html>
<head>
<script language=javascript>
function disabluj() {
document.forms[0].baton.disabled = true;
}
</script>
</head>
<body>
<form onSubmit="disabluj">
<input type=submit name=baton value=wyslij>
</form>
<a href="java script: disabluj()">wylacz</a>
</body>
</html>[/xml:1:c1e23d510c]
Moze cos takiego...
Milej zabawy
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.