Ako zabrániť opakovanému odoslaniu formulára - VYRIEŠENÉ

Programovacie jazyky, rady, poradňa...
L.E.n
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 289
Registrovaný: 22 mar 2010, 19:47
Bydlisko: Broken mind
Kontaktovať používateľa:

Ako zabrániť opakovanému odoslaniu formulára - VYRIEŠENÉ

Príspevok od používateľa L.E.n »

Zdravím, chcel by som sa spýtať ako je možné zabrániť opätovnému zasielaniu formulára.
Mám script cez ktorý sa nahrávajú na server obrázky, po skončení odosielania sa tieto obrázky zobrazia, no stačí stlačiť F5 a obrázky sa nahrajú znova. A to nie je moc pekné.

Viem že môžem užívateľa presmerovať na inú stránku, no potom by som musel zmeniť systém zobrazovania obrázkov, viete niekto o niečom inom ako tomu zabrániť?
Ďakujem.
TommyHot
Addict
Addict
Používateľov profilový obrázok
Príspevky: 3340
Registrovaný: 25 okt 2009, 0:23
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Ako zabrániť opakovanému odoslaniu formulára - PHP?

Príspevok od používateľa TommyHot »

Po upnuti obrazka presmerujes usera na iny script ktory zobrazi spravu, ze uploadol obrazok a potom ho presmerujes naspat na script, ktory obrazok uploadoval, alebo na nejaky zoznam uploadnutych obrazkov etc. Alebo si sprav ajaxove uploadovanie. Inu moznost velmi nemas.
L.E.n
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 289
Registrovaný: 22 mar 2010, 19:47
Bydlisko: Broken mind
Kontaktovať používateľa:

Re: Ako zabrániť opakovanému odoslaniu formulára - PHP?

Príspevok od používateľa L.E.n »

Už som písal že to by som potom musel zmeniť systém zobrazovania, ale keď hovoríš že iná šanca nie je tak budem musieť.. vďaka.
TommyHot
Addict
Addict
Používateľov profilový obrázok
Príspevky: 3340
Registrovaný: 25 okt 2009, 0:23
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Ako zabrániť opakovanému odoslaniu formulára - PHP?

Príspevok od používateľa TommyHot »

Potom este to ajaxove uploadovanie. Je na to aj jQuery plugin, ale ci sa ti podari v nom vysomarit neviem http://valums.com/ajax-upload/

// teoreticky mozes povolit upload len vtedy ak este neexistuje predom definovana cookie.. no a po uploade ju vytvoris.. a teda ked das refresh, cookie existuje, tak dalsi upload nezbehne.
L.E.n
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 289
Registrovaný: 22 mar 2010, 19:47
Bydlisko: Broken mind
Kontaktovať používateľa:

Re: Ako zabrániť opakovanému odoslaniu formulára - PHP?

Príspevok od používateľa L.E.n »

TommyHot napísal:Potom este to ajaxove uploadovanie. Je na to aj jQuery plugin, ale ci sa ti podari v nom vysomarit neviem http://valums.com/ajax-upload/

// teoreticky mozes povolit upload len vtedy ak este neexistuje predom definovana cookie.. no a po uploade ju vytvoris.. a teda ked das refresh, cookie existuje, tak dalsi upload nezbehne.
Na AJAX sa necítim ale s tou cookie to znie fajn, ďakujem :)
Blade.m
Medium Star
Medium Star
Príspevky: 454
Registrovaný: 06 apr 2007, 20:10
Bydlisko: Čadca

Re: Ako zabrániť opakovanému odoslaniu formulára - VYRIEŠENÉ

Príspevok od používateľa Blade.m »

tiez by bola moznost si vytvorit bool premennu a nastavit si ju na hodnotu true a porovnavas ak sa dostanes na stranku prvy krat (teda pred odoslanim), tak je true a teda zobrazi ti formular, ak si ho uz odoslal, tak nastavis hodnotu na false a uz ti formular neukaze, iba spravu o odoslani

Kód: Vybrať všetko

bool neodoslal = true;
if(neodoslal)
{
//formular
neodoslal = false;
}
else
{
//sprava o odoslani
}
TommyHot
Addict
Addict
Používateľov profilový obrázok
Príspevky: 3340
Registrovaný: 25 okt 2009, 0:23
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Ako zabrániť opakovanému odoslaniu formulára - VYRIEŠENÉ

Príspevok od používateľa TommyHot »

1) nacitanie webu - neodoslal = true
2) odoslanie formulara - neodoslal = false
3) refresh po odoslani formulara - neodoslal = true
4) odoslanie formulara druhykrat - neodoslal = false
5) a stale dokola

Po znovunacitani sa ti boolean premenna znova nastavi na true. Alebo mi nieco uslo?
Everhard
Light Expert
Light Expert
Príspevky: 79
Registrovaný: 25 dec 2010, 14:41

Re: Ako zabrániť opakovanému odoslaniu formulára - VYRIEŠENÉ

Príspevok od používateľa Everhard »

formular(SUBOR1.PHP) ma action na SUBOR2.PHP:
1. skript ktory nahrava subory
2. header('Location: SUBOR3.PHP');

SUBOR3.PHP vypise obrazky
Napísať odpoveď