abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 13:22 | IT novinky

    Andrew S. Tanenbaum byl oceněn 2023 ACM Software System Award (Wikipedie) za operační systém MINIX.

    Ladislav Hagara | Komentářů: 0
    dnes 10:22 | Komunita

    Celkový počet stažení aplikací z Flathubu překročil 2 miliardy. Aktuální Statistiky Flathubu: Celkový počet stažení 2 002 793 783. Celkem desktopových aplikací 2 636.

    Ladislav Hagara | Komentářů: 5
    21.6. 23:33 | Nová verze

    Byla vydána nová verze 4.8.0 programu na úpravu digitálních fotografií darktable (Wikipedie).

    Ladislav Hagara | Komentářů: 0
    21.6. 23:11 | Zajímavý článek

    Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 142 (pdf) a HackSpace 79 (pdf).

    Ladislav Hagara | Komentářů: 0
    21.6. 18:22 | Nová verze

    Qtractor (Wikipedie) dospěl do verze 1.0.0. Jedná se o Audio/MIDI vícestopý sekvencer.

    Ladislav Hagara | Komentářů: 0
    21.6. 14:33 | Nová verze

    Byl vydán svobodný kancelářský balík OnlyOffice Docs 8.1. Vedle četných oprav přináší několik funkcí včetně podpory editace textu v PDF a vytváření formulářů v PDF.

    Fluttershy, yay! | Komentářů: 37
    21.6. 12:33 | Zajímavý článek

    Daniel Stenberg, autor nástroje curl, z databáze SteamDB zjistil, že aktuálně 22 734 her na Steamu používá curl.

    Ladislav Hagara | Komentářů: 4
    20.6. 19:55 | IT novinky

    Společnost Anthropic vydala Claude 3.5 Sonnet, tj. novou verzi své umělé inteligence Claude (Wikipedie). Videoukázky na YouTube. S Claude 3, stejně jak s GPT-3.5, Llama 3 a Mixtral, si lze pokecat bez přihlašování na DuckDuckGo AI Chat.

    Ladislav Hagara | Komentářů: 0
    20.6. 16:55 | Nová verze

    Byla vydána nová stabilní verze 6.8 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 126. Přehled novinek i s náhledy v příspěvku na blogu a na YouTube. Vypíchnuta jsou vylepšení v integrovaném poštovním klientu.

    Ladislav Hagara | Komentářů: 0
    20.6. 12:11 | Zajímavý článek

    Příspěvek Aukce domén – měsíc po spuštění na blogu CZ.NIC shrnuje první měsíc provozu Aukce domén .CZ. Aukcemi prošlo celkem 18 174 domén, z toho na 742 z nich byl učiněn alespoň 1 příhoz. Nejdražší aukcí byla na doménu virtualnisidlo.cz s cenou 95 001 Kč, která však nebyla včas uhrazena. Nejdražší aukcí, která byla vydražena i zaplacena je praguecityline.cz s cenovkou 55 600 Kč.

    Ladislav Hagara | Komentářů: 16
    Rozcestník

    Dotaz: Počet otevřených oken v prohlížeči z jednoho www severu

    6.3.2012 10:38 Jarda
    Počet otevřených oken v prohlížeči z jednoho www severu
    Přečteno: 426×
    Hezký den

    existuje vůbec jak zjistit, kolik má uživatel otevřených oken z jednoho a téhož www severu pomocí javascriptu společně s php a dalšími technologiemi? Viděli jste takovéto řešení? Poradíte? Důvod je prostý, chci zamezit možnosti editace shodných formulářových dat jedním klientem v téže době.

    Jarda

    Odpovědi

    6.3.2012 11:28 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Počet otevřených oken v prohlížeči z jednoho www severu
    Neexistuje. A stejně by to neřešilo váš problém, protože formulář může editovat víc uživatelů na různých počítačích.

    Řešením je zamykat příslušná data, tj. uživatel je zamkne a pak edituje, ostatní mohou editovat až po odemčení. V případě webu je vhodné nějak vyřešit automatické odemykání (uživatel zavře prohlížeč bez uložení, odpojí se od internetu atd.). Tj. zámek by měl mít nějakou časovou platnost, a pokud je daná stránka otevřená v okně prohlížeče, pomocí JavaScriptu bych na server pinkal („stále edituje“), čímž by se zámek automaticky prodlužoval.

    Opravdu potřebujete zamezit souběžné editaci, nestačilo by optimistické zamykání? Tj. uživatel edituje nějakou verzi, s uložením se verze zvýší. Při ukládání se otestuje, zda editovaná verze souhlasí s aktuální verzí – pokud ne, někdo data mezitím změnil a uživatel musí konflikt vyřešit.
    6.3.2012 11:48 Jarda
    Rozbalit Rozbalit vše Re: Počet otevřených oken v prohlížeči z jednoho www severu
    Editaci různými klienty už mám vyřešeno a to zamykáním dat. Ale to ne znáte vynalézaví uživatele! Tisíckrát jim říkám neotevírat další okna a ni je i tak otevřou! Tak jsem si říkal, když tuto informaci získám, tak při otevírání dalšího okna mu napíšu něco slušně v tom smyslu, b...u už to edituješ!
    6.3.2012 12:06 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Počet otevřených oken v prohlížeči z jednoho www severu
    Dalo by se to vyřešit trikem s window.name – každé okno prohlížeče by tam mělo unikátní název (pokud by tam ještě ID nebylo, požádal byste si server o další), a zámek by měl tohle ID poznamenané. Pokud by uživatel zkusil editační formulář otevřít z jiného okna, dostal by varování. Ale nejsem si jist, zda by se vám podařilo zachytit případné zavření prvního okna. Každopádně mi to připadá jako kanón na vrabce…
    Josef Kufner avatar 10.3.2012 13:28 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Počet otevřených oken v prohlížeči z jednoho www severu
    Můžeš nastavit cookie a pak ji kontrolovat. Pokud cookie nastaví jedno okno, druhé ji uvidí také. Je to něco jako sdílená paměť a stejným způsobem je můžeš použít v javascriptu pro meziokenní komunikaci.
    Hello world ! Segmentation fault (core dumped)
    10.3.2012 14:47 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Počet otevřených oken v prohlížeči z jednoho www severu
    Jenže kdyby uživatel formulář otevřel v jednom okně, pak ho zavřel a otevřel znova, dostane vynadáno taky, protože u té cookie nepůjde zjistit, že ji nastavilo aktivní okno. Předpokládám, že proto tazatel potřebuje umět jednotlivá okna odlišit.
    Josef Kufner avatar 10.3.2012 15:11 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Počet otevřených oken v prohlížeči z jednoho www severu
    Ale zjistí. Stačí v té cookie udržovat aktuální čas, třeba jen jednou za sekundu. Pak script v druhém okně uvidí, že ta cookie se mění nebo je jen příliš čerstvá a může podle toho jednat.

    Alternativou k aktivní modifikaci cookie může být její odstranění při zavření okna. Asi bych skloubil obojí – méně častou aktualizaci (10 sekund?) a úklid při zavření okna, takže to nebude zbytečně zatěžovat prohlížeč, ale přitom to bude přiměřeně spolehlivé.

    Pokud pak někdo okno otevře a zas zavře, cookie zmizí a při dalším otevření se žádné varování nekoná. Pokud k tomu otevře druhé okno, tak script uvidí cookie a zakřičí.

    Další možností je window.open() s názvem skrytého iframe, jak to dělá bncconnector (netestoval jsem to).
    Hello world ! Segmentation fault (core dumped)
    6.3.2012 11:29 fixxxer
    Rozbalit Rozbalit vše Re: Počet otevřených oken v prohlížeči z jednoho www severu
    Pridaj k tym datam do tabluky dalsi slpec, co ja viem "can_edit". V pripade ze niekto edituje dany zaznam, "can_edit" = 0. Po skoneceni editacii (submite) nastav znova ten slpec na 1 (zize da sa editovat).

    V pripade ze niekto dalsi bude chciet sucasne editovat dany zaznam, musis najprv zistit ci "can_edit" je 1, ak nieje zakaz mu editaciu.

    Jedna vec sa danemu sposobu vytknut. V pripade ze niekto edituje dany zaznam, a neulozi data (povedzme strati spojenie so servrom), "can_edit" bude stale nastaveny na 0, cize nik iny nebudem moct editovat, pokial (manulane alebo inym sposobom) nezmenis "can_edit" na 1

    10.3.2012 17:26 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Počet otevřených oken v prohlížeči z jednoho www severu
    Příloha:
    Jak to tady čtu, tak jsem si řekl, že se připojím. Lze to pomocí dvou řešení(, ale jen v rámci vaší aplikace). Buď máte „Javacript super stránky“ a nikdy neodešlete celou stránku takže máte neustále jednu stránku, které bylo přiděleno nějaké ID a tuto identifikaci držíte v nějaké globální proměnné (Javascriptové) a vždy ji odesíláte s každým requestem a na straně serveru tyto proměnné jen evidujete, takže když se otevře nové okno ve vaší aplikaci víte o tom, bo jej musíte evidovat (nebo dokonce přidělit id).
    Nebo stránku umístíte do frame-u a máte druhý viditelný/neviditelný frame a v něm udržujete id okna viz příloha a v ní tři funkční php dokumenty.
    Pokud stránka, ze které bude uživatel editovat data, umožní registraci okna a stránka kde se data již editují ne, ta již pak vyžaduje registrované okno, tak jeden uživatel nikdy nemůže editovat data 2× současně a taky pokud si omylem zavře „to správné“ okno, tak se nic neděje protože vstupem na stránku, kde bude data k editaci volit, si editaci opět povolí (a zakáže pro jakákoliv jiná i otevřená okna a, o kterých víte na serveru a můžete o tom informovat) - jak s tím pracovat a jak uživatele informovat a co povolit je už na Vás.
    Pokud se to zkombinuje i s funkcí keep-alive, tj. každé okno (ten hlavni frame) si pinká na server třeba po minutě přes httprequest a prodlužuje platnost registrace okna, tak přesně víte (v rámci 1-2 min) i jaká okna existují a můžete přímo sdělit „data zapsána, data editujete ještě v jednom okně a nyní nejsou aktuální“ nebo to prostě pro to okno zakázat, nebo nepovolit zápis pokud existují taková okna dvě, nebo prostě neotevřít další editační okno, pokud už nějaké existuje.
    Ale jak vidíte přináší to i spoustu otázek typu „A když toto, tak co?“
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.