Autor | Zpráva | ||
---|---|---|---|
houbeless Profil |
#1 · Zasláno: 22. 12. 2007, 20:33:08
Zdravim,
koukal jsem, že tento problém se tu vyskytuje, ale odpovědi mě nějak neuspokojili. Potřeboval bych vyprázdnit $_POST, proto aby se mi při refreshi stránky znova její obsah nezapsal do db. Zkoušel jsem třeba unset($_POST['promena']); promena= získaná z formuláře, ale nefunguje. Jde to vůbec, děkuji. |
||
Kajman_ Profil * |
#2 · Zasláno: 22. 12. 2007, 20:39:34
Na stránkce, kde post zpracováváte dejte přesměrování na jinou stránku pomocí location v http hlavičce na jinou stránku. Data z formuláře pomocí unset smažete jen na serveru, ale problémy dělají uživatelé a jejich prohlížečům data nesmažete.
|
||
houbeless Profil |
#3 · Zasláno: 22. 12. 2007, 20:45:33
nj, ale jak to udělat. Já to mám řešeno v jedné funkci, kde action(formulaře)= odkazuje na sebe sama a používám to v CMS UN, kde hlavička je řešena v jiném skriptu, ted bych potřeboval trknout....
|
||
Kajman_ Profil * |
#4 · Zasláno: 22. 12. 2007, 20:53:02
Co třeba neodkazovat na sebe sama a udělat si pomocný zpracovávajicí skript.
|
||
DoubleThink Profil * |
#5 · Zasláno: 22. 12. 2007, 21:06:15
Co třeba neodkazovat na sebe sama a udělat si pomocný zpracovávajicí skript.
Není nezbytné, po zpracování se můžeš přesměrovat na sebe sama. Jenom doplním, že podle specifikace se má používat stavový kód 303 Method (prohlížeče sice POST data u 301 a 302 taky vysypou, to by ale podle norem nemuseli). |
||
houbeless Profil |
#6 · Zasláno: 22. 12. 2007, 21:07:33
jj, vyřešil jsem to tak, je to bezpečnější, díky
|
||
houbeless Profil |
#7 · Zasláno: 22. 12. 2007, 21:09:08
ok, Já to prostě zapíšu v jiné funkci a pak se zase vrátim do té s formlulářem. thx
|
||
suky Profil |
#8 · Zasláno: 22. 12. 2007, 21:32:37 · Upravil/a: suky
ja pouzivam:
echo "<script>window.location.href=\"stranka_kterou_chci_zobrazit.php\";</script>"; |
||
djlj Profil |
#9 · Zasláno: 22. 12. 2007, 23:51:41
suky
Zbytečné a navíc nemusí být vždy funkční. |
||
v6ak Profil |
#10 · Zasláno: 23. 12. 2007, 09:23:50
Lepsí je použít header('Location:http://absolutni/adresa').
|
||
djlj Profil |
#11 · Zasláno: 23. 12. 2007, 10:17:07
Nevím, proč sem pořád píšete špatná řešení, když DoubleThink už napsal to správné.
header("location:http://nejakaadresa/", true, 303); |
||
suky Profil |
#12 · Zasláno: 23. 12. 2007, 10:44:28 · Upravil/a: suky
djlj
Proc by jako nemelo byt funkcni? Zabrani to uspesne druhemu odeslani formulare? Zabrani! Tak jaka nefunkcnost? |
||
djlj Profil |
#13 · Zasláno: 23. 12. 2007, 10:52:14
suky
S vypnutým JS (mobil atp.) se nic nepřesměruje. |
||
suky Profil |
#14 · Zasláno: 23. 12. 2007, 11:22:29 · Upravil/a: suky
djlj
Mobil? Klasicky priklad vyuziti formularu a php ;) |
||
djlj Profil |
#15 · Zasláno: 23. 12. 2007, 11:45:10 · Upravil/a: djlj
suky
Cože? Já surfuju na mobilu běžně, běžně se tak někam přihlašuju, něco vyplňuju. A dost mi vadí, když právě kvůli javaskriptu někde něco nefunguje. A nemám Symbian, takže tam nemám nějaké extra technické vybavení. Proč se spoléhat na technické vybavení uživatele, když to lze provést elegantněji ze strany serveru? |
||
suky Profil |
#16 · Zasláno: 23. 12. 2007, 11:52:49
djlj
OK, tak to pak jo... a to si fakt nemuzes na mobilu zapnout javaskript? |
||
djlj Profil |
#17 · Zasláno: 23. 12. 2007, 23:06:00
suky
Ne. |
||
Časová prodleva: 16 let
|
0