IT NEWS PC REVUE PC FORUM FreeBSDInternet time: @932
Obsah fóra
Pravidlá  •  Kontakt  •  Prihlásenie  •  Registrácia

Absolvovali ste chemoterapiu?

DetoxiPan GOLD zmierni jej bočné účinnky Testovaný a patentovaný japonský produkt www.detoxipan.sk

Bonus 50 € za prenos

čísla do O2 na ktorýkoľvek program s platbou na faktúru. V e-shope. www.o2.sk

Pomoc - rýchla diéta

Potrebujete schudnúť čo najrýchlejšie? Vyskúšajte túto ľahkú a zdravú diétu! www.news2channel.net

Zaregistruj sa!

Tvoj názor stojí peniaze. Vyplňte dotazník a zarobte si! www.marketagent.com

Pre ľahší život

Pozrite sa, ako sa dostať do zdravšej a ľahšej telesnej hmotnosti. www.janinblog.com

Viacnásobné odoslanie formuláru

Zaslať odpoveď
AutorSpráva
camo
Zablokovaný užívateľ
Zablokovaný užívateľ

Založený: 05.09.2009
Príspevky: 1176
Bydlisko: Lehota pod Vtáčnikom

PríspevokZaslal: So 03.09.11 14:41Odpovedať s citátomNávrat hore

Mám pár formulárov urobených takýmto štýlom:

odoslať -> spracovať + vypísať OK.. -> pomocou meta refresh presmerovať.

Myslel som že to bude fungovať, ale nefunguje. Pred tým než to prerobím na header(location) by som chcel vedieť, či to naozaj cez ten meta refresh nepôjde.
Zobraziť informácie o autoroviOdoslať súkromnú správuSkypeZobraziť autorove WWW stránky
emer
Užívateľ
Užívateľ

Založený: 26.12.2006
Príspevky: 3684
Bydlisko: Nitra
Vek: 18

PríspevokZaslal: So 03.09.11 14:45Odpovedať s citátomNávrat hore

tazko zistit, co od nas chces.. skus inak. nazov temy voebc nezodpoveda obsahu.

_________________
Pocity popi*i, keď víš že všetko hrá jak má, vychádza to všetko pekne, tak jak má, hovorim si ná ne, musíš vedeť plánovať
Zobraziť informácie o autoroviOdoslať súkromnú správuICQZobraziť autorove WWW stránky
camo
Zablokovaný užívateľ
Zablokovaný užívateľ

Založený: 05.09.2009
Príspevky: 1176
Bydlisko: Lehota pod Vtáčnikom

PríspevokZaslal: So 03.09.11 14:48Odpovedať s citátomNávrat hore

No chcem zabrániť viacnásobnému odoslaniu formulára. Myslel som že to pôjde aj cez html meta refresh, ale zdá sa, že nie.
Nejako to nechápem...
Zobraziť informácie o autoroviOdoslať súkromnú správuSkypeZobraziť autorove WWW stránky
emer
Užívateľ
Užívateľ

Založený: 26.12.2006
Príspevky: 3684
Bydlisko: Nitra
Vek: 18

PríspevokZaslal: So 03.09.11 16:03Odpovedať s citátomNávrat hore

co znamena viacnasobne odoslanie formulara? ked niekto po odoslani formu stlaci f5 alebo sa vrati spat?

_________________
Pocity popi*i, keď víš že všetko hrá jak má, vychádza to všetko pekne, tak jak má, hovorim si ná ne, musíš vedeť plánovať
Zobraziť informácie o autoroviOdoslať súkromnú správuICQZobraziť autorove WWW stránky
1daemon1
Užívateľ
Užívateľ

Založený: 14.04.2009
Príspevky: 824

PríspevokZaslal: So 03.09.11 17:36Odpovedať s citátomNávrat hore

Refresh pomocou meta ti predsa znova formular neodosle. Chybu mas inde.
Zobraziť informácie o autoroviOdoslať súkromnú správuSkype
Ďuri
Administrátor
Administrátor

Založený: 11.08.2007
Príspevky: 3785
Bydlisko: Brno

PríspevokZaslal: So 03.09.11 18:26Odpovedať s citátomNávrat hore

camo napísal:
No chcem zabrániť viacnásobnému odoslaniu formulára. Myslel som že to pôjde aj cez html meta refresh, ale zdá sa, že nie.
Nejako to nechápem...
Nechapem to ani ja. Nepouzivam sice <meta http-equiv=refresh>, ale normalnu HTTP hlavicku Refresh, a vyzera to tak, ze aj ked po uplynuti casu stanoveneho hlavickou Refresh vytvori Firefox GET request, odniekial vyhrabe tie POST data a snazi sa ich pri obnoveni stranky opatovne odoslat. Chyba sa neprejavuje, ked v HTTP hlavicke Refresh pouzijes parameter URL s hodnotou inou ako je sucasna adresa. Internet Explorer sa chova u mna spravne vo vsetkych pripadoch.
Zobraziť informácie o autoroviOdoslať súkromnú správuJabberSkype
1daemon1
Užívateľ
Užívateľ

Založený: 14.04.2009
Príspevky: 824

PríspevokZaslal: So 03.09.11 19:33Odpovedať s citátomNávrat hore

<meta http-equiv="refresh"> mi vo ff blbne ale takto to funguje uplne normalne:

kód:
<html>
<head>
<?php
if( isset( $_GET['spracuj'] ) ) {
   echo "<meta http-equiv=\"refresh\" content=\"2;url=\">";
}
?>
</head>
<body>
<?php
echo print_r( $_POST );
?>
<form action="?spracuj" method="post">
<input type="name" name="hodnota">
<input type="submit">
</form>
</body>
</html>
Zobraziť informácie o autoroviOdoslať súkromnú správuSkype
camo
Zablokovaný užívateľ
Zablokovaný užívateľ

Založený: 05.09.2009
Príspevky: 1176
Bydlisko: Lehota pod Vtáčnikom

PríspevokZaslal: So 03.09.11 19:37Odpovedať s citátomNávrat hore

emer:
Presne tak.

Ďuri:
Takže to je chyba FF. Ako vypisuješ hlášky o spacovaní formulára? Posielaš to ako get v URL, alebo inak?

Skúsil som to riešiť tak, že som do toho refreshu dal inú URL a na tej novej URL som to presmeroval na tu starú URL. Vyzerá, že to funguje.

Len mi trochu vadí, že kým sa zobrazuje tá "OK" hláška(kým to nerefreshne), tak sa ten form dá odoslať viac krát. Som si dal na tých hláškach záležať a nerád by som to prerábal. Ale asi to tak musí byť...
Zobraziť informácie o autoroviOdoslať súkromnú správuSkypeZobraziť autorove WWW stránky
Ďuri
Administrátor
Administrátor

Založený: 11.08.2007
Príspevky: 3785
Bydlisko: Brno

PríspevokZaslal: So 03.09.11 19:45Odpovedať s citátomNávrat hore

camo
Toto som zbuchal. Odosli formular, po odoslani dorazi ta hlavicka Refresh, pockas 5 sekund, ono sa to presmeruje na seba same. To presmerovanie robi kazdy prehliadac GET requestom, cize POST data z predosleho requestu by mali byt davno prec, ale ak si skusis stlacit F5, vo Firefoxe vyskakuje to okienko, aby si potvrdil znovuodoslanie POST dat (pricom tam nemaju byt nijake).
Preco nechces pouzit hlavicku Location?
Zobraziť informácie o autoroviOdoslať súkromnú správuJabberSkype
camo
Zablokovaný užívateľ
Zablokovaný užívateľ

Založený: 05.09.2009
Príspevky: 1176
Bydlisko: Lehota pod Vtáčnikom

PríspevokZaslal: So 03.09.11 20:07Odpovedať s citátomNávrat hore

Ďuri:
Nechce sa mi do toho headeru, lebo som tie hlášky moc prešpekuloval. Majú ešte aj vlastnú šablonu...

A ešte mám voči tomu headeru jednu takú vec. Ono to neposiela session id ak sú zakázané cookies. Je to síce len malá pravdepodobnosť, ale stále mám pri tom takú nechuť k tomu.

1daemon1:
http://www.linuxsoft.cz/article.php?id_article=357
Na konci to máš vysvetlené.
Zobraziť informácie o autoroviOdoslať súkromnú správuSkypeZobraziť autorove WWW stránky
chrono
Skúsený užívateľ
Skúsený užívateľ

Založený: 13.11.2007
Príspevky: 808

PríspevokZaslal: So 03.09.11 21:08Odpovedať s citátomNávrat hore

To, že sa neposiela session id nie je problém (keď sa cookie nezmení, tak sa posielať nemusí, prehliadač ho predsa pozná).
Zobraziť informácie o autoroviOdoslať súkromnú správu
camo
Zablokovaný užívateľ
Zablokovaný užívateľ

Založený: 05.09.2009
Príspevky: 1176
Bydlisko: Lehota pod Vtáčnikom

PríspevokZaslal: So 03.09.11 21:36Odpovedať s citátomNávrat hore

No ale keď žiadne cookie nastavné neni tak ani žiadne nepozná, nie?
Zobraziť informácie o autoroviOdoslať súkromnú správuSkypeZobraziť autorove WWW stránky
chrono
Skúsený užívateľ
Skúsený užívateľ

Založený: 13.11.2007
Príspevky: 808

PríspevokZaslal: So 03.09.11 21:39Odpovedať s citátomNávrat hore

Kto nepozná?

Prehliadač bude cookie posielať počas celej platnosti a server zvyčajne cookies posiela len keď sa cookie zmení, keď chce cookie vymazať (a teda sa zmení čas expirácie)...
Zobraziť informácie o autoroviOdoslať súkromnú správu
camo
Zablokovaný užívateľ
Zablokovaný užívateľ

Založený: 05.09.2009
Príspevky: 1176
Bydlisko: Lehota pod Vtáčnikom

PríspevokZaslal: So 03.09.11 21:43Odpovedať s citátomNávrat hore

No však, ale keď sú od samého začiatku cookies zakázané, tak prehliadač žiadne nenastaví ani nepošle. Veď SID sa musí vždy najprv nastaviť. A keďže sa to serveru neporadí, tak posiela SID v URL. Až kým nenarazí na ten header() o ktorom sa bavíme.
Zobraziť informácie o autoroviOdoslať súkromnú správuSkypeZobraziť autorove WWW stránky
chrono
Skúsený užívateľ
Skúsený užívateľ

Založený: 13.11.2007
Príspevky: 808

PríspevokZaslal: So 03.09.11 21:53Odpovedať s citátomNávrat hore

Nie je problém pridať SID do url "ručne".
Zobraziť informácie o autoroviOdoslať súkromnú správu
Zobraziť príspevky z predchádzajúcich:    
Zaslať odpoveď
Nemôžete pridávať nové témy do tohto fóra.
Nemôžete odpovedať na témy v tomto fóre.
Nemôžete upravovať svoje príspevky v tomto fóre.
Nemôžete mazať svoje príspevky v tomto fóre.
Nemôžete hlasovať v tomto fóre.

Powered by phpBB 2.x.x © 2005 - 2012 PCforum, webhosting by WebSupport, edited by JanoF

SEO - optimalizácia pre vyhľadávače

Freebsd