Zdravím Vás, potreboval by som radu ohľadom ošetrenia stránky pred jej dvojnásobným spustením. Ide mi to aby keď si uživateľ otvorí dvakrát tú istú stránku (aj v iních prehliadačoch) tak mu vypísalo nejakú chybu, tá by tak ukončila skript, ktorý by následne nemohol prebehnúť. Aké by ste zvolili riešenie? Deklarácia globálnej premennej, ktorej by bola pomocou js následne odobratá hodnota ak by sa uživateľ rozhodol stránku vypnúť? Jediné riešenie, ktoré mi napadlo no javascript by som do toho nerád pridával. Vďaka.
Ak tu náhodou bol rozoberaný podobný problém tak sa vopred ospravedlňujem.
Ošetrenie dvojnásobného spúšťania PHP skriptu
-
optimistavf
Novice
- Príspevky: 3
- Registrovaný: 02 sep 2010, 22:43
-
audiotrack
VIP
- Príspevky: 25958
- Registrovaný: 09 sep 2005, 18:39
- Kontaktovať používateľa:
Re: Ošetrenie dvojnásobného spúšťania PHP skriptu
ten javascript ti ale neošetrí dva rôzne prehliadače ako si spomínal. Asi bude jediná možnosť pomocou prihlasovania - len keď je prihlásený, vieš že je to on a vieš si to ošetriť. Inak nedokážeš zistiť či je to tá istá osoba ale z iných prehliadačov. Aspoň mne teraz žiaden spôsob nenapadá
Re: Ošetrenie dvojnásobného spúšťania PHP skriptu
Navrhujem podobné riešenie, podľa môjho názoru by sa dal pre každú IP urobiť nejaký session s globálnou premennou, ktorý by viacnásobnému spusteniu zabránil.
-
audiotrack
VIP
- Príspevky: 25958
- Registrovaný: 09 sep 2005, 18:39
- Kontaktovať používateľa:
Re: Ošetrenie dvojnásobného spúšťania PHP skriptu
lenže jednu IP môže mať viac rôznych ľudí (ak sú napríklad za NATom). Pokiaľ sa ten človek neidentifikuje jednoznačne sám (prihlásenie) tak nevieš rozlíšiť či je jeden prístup z dvoch miest rovnaký, alebo nie (cháp. rovnakej osoby).Skyer napísal:Navrhujem podobné riešenie, podľa môjho názoru by sa dal pre každú IP urobiť nejaký session s globálnou premennou, ktorý by viacnásobnému spusteniu zabránil.
-
harrison314
Hardcore addict
- Príspevky: 8224
- Registrovaný: 27 máj 2009, 20:42
- Bydlisko: Bratislava
- Kontaktovať používateľa:
Re: Ošetrenie dvojnásobného spúšťania PHP skriptu
Nie som si sttopercentne isty, ale hostname by malo byt unikatne, pridas nejaky token.
A pouzil by som Databzu namiesto session.Myslim ze cookies sa da nejako oklamat.
Len tu moze nastat prblem ked da refresh, alebo bude mat ju otvorenu dlho a potom otvori inu.
V takomto pripade by som pouzil AJAX aby v pravidelnych intervaloch obcerstvovalo databazu.
A pouzil by som Databzu namiesto session.Myslim ze cookies sa da nejako oklamat.
Len tu moze nastat prblem ked da refresh, alebo bude mat ju otvorenu dlho a potom otvori inu.
V takomto pripade by som pouzil AJAX aby v pravidelnych intervaloch obcerstvovalo databazu.
-
audiotrack
VIP
- Príspevky: 25958
- Registrovaný: 09 sep 2005, 18:39
- Kontaktovať používateľa:
Re: Ošetrenie dvojnásobného spúšťania PHP skriptu
tým "pridáš nejaký token" a tým session si práve napísal to čo ja, že sa má prihlasovať 
-
optimistavf
Novice
- Príspevky: 3
- Registrovaný: 02 sep 2010, 22:43
Re: Ošetrenie dvojnásobného spúšťania PHP skriptu
Na tej stránke mi beží ajax, ktorý volá každých 10 sekúnd php súbor, ktorý updatuje databázu. V podstate mi stačí ošetriť to, aby v prípade že užívateľ má otvorenú tú istú stránku dvakrát nemohla prebehnúť aktualizácia databázy, ale miesto toho by v inom bloku zobrazilo chybové hlásenie.
Cez session to nepôjde.. jedine, že by tam bola nejaká funkcia, ktorá by vymazala hodnotu v prípade zatvorenia okna.
Cez session to nepôjde.. jedine, že by tam bola nejaká funkcia, ktorá by vymazala hodnotu v prípade zatvorenia okna.