Autor | Zpráva | ||
---|---|---|---|
Pavel Dumbrovský Profil |
#1 · Zasláno: 29. 7. 2012, 02:25:31
Dobrý den,
chtěl jsem použít skript pro ošetření vícenásobného odeslání formu odsud (dole): https://akela.mendelu.cz/~xhelan/4.semestr/WA/ke%20zkousce/priklady/PHP/04-form.html a řešit to za pomocí sessions. Stále jsem nechápal, proč to nefunguje až jsem to vyzkoušel v IE, kde to funguje jak má, v Chromu ne. Ví někdo víc o tom, proč sessions fungují jinak v různých prohlížečích? Asi nezbyde, než použít řešení s přesměrováním. Díky. |
||
Keeehi Profil |
#2 · Zasláno: 29. 7. 2012, 08:08:25
Sessions nejsou na prohlížeči téměř vůbec závislé. Jediné co od prohlížeče potřebují jsou funkční cookies. Dokonce, pokud je vypnuto session.use_only_cookies, dokáže existovat bez cookies v url. Chyba bude tedy někde jinde.
|
||
Pavel Dumbrovský Profil |
#3 · Zasláno: 29. 7. 2012, 11:37:09
No že chyba bude někde jinde mi moc nepomohlo.. Vzhledem k tomu, že do cookies vůbec nehrabu, tak tento problém můžu očekávat i u ostatních návštěvníků.
|
||
Keeehi Profil |
#4 · Zasláno: 29. 7. 2012, 12:26:41
Pavel Dumbrovský:
Neznám prohlížeč, který by měl po instalaci cookies zakázané. To že ti to nefunguje, tak za to s velkou pravděpodobností nemůže sessions. Chybu hledej jinde. Bez živé ukázky více poradit nemohu. |
||
Tori Profil |
#5 · Zasláno: 29. 7. 2012, 12:43:04
Pavel Dumbrovský:
Uvedený kód (řešení B) mi v Chrome funguje stejně jako v IE. |
||
Pavel Dumbrovský Profil |
#6 · Zasláno: 29. 7. 2012, 22:23:58
Hm, tak pak nevím co s tím, ale jak říkám, s cookies jsem nic nedělal, také jsem prakticky pouze zkopíroval to řešení, takže mi nezbývá, než cestu se sessions zavrhnout, protože když to zlobí u mě, může u kohokoliv jiného. Už jsem to udělal přes JS location.replace.
|
||
Alphard Profil |
#7 · Zasláno: 29. 7. 2012, 22:33:38
Pavel Dumbrovský:
Pár bodů: 1. Zcela běžné a normální řešení je přesměrování po akci pomocí header location, nevidím důvod to nepoužít. 2. Ztěžujete si, že něco nefunguje, ale kód je funkční (viz [#5] Tori). Takže musíte začít debugovat v nefunkčním (vašem) prostředí. Podívat se, jestli existuje cookie, vypsat si obsah polí POST a SESSION (a ručně porovnat). Ten script má 20 řádků, i kdybyste to měl metodou DDD (dump driven develpment) na každém řádku vypsat, nemůže to trvat dlouho. 3. Spoléhat se na javascript není dobré řešení. |
||
Časová prodleva: 12 let
|
0