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

    Americký prezident Donald Trump vyzval nového generálního ředitele firmy na výrobu čipů Intel, aby odstoupil. Prezident to zdůvodnil vazbami nového šéfa Lip-Bu Tana na čínské firmy.

    Ladislav Hagara | Komentářů: 1
    dnes 16:55 | Nová verze

    Bylo vydáno Ubuntu 24.04.3 LTS, tj. třetí opravné vydání Ubuntu 24.04 LTS s kódovým názvem Noble Numbat. Přehled novinek a oprav na Discourse.

    Ladislav Hagara | Komentářů: 0
    dnes 16:44 | Nová verze

    Byla vydána verze 1.89.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    dnes 12:22 | IT novinky

    Americká technologická společnost Apple uskuteční v USA další investice ve výši sta miliard dolarů (2,1 bilionu korun). Oznámil to ve středu šéf firmy Tim Cook při setkání v Bílém domě s americkým prezidentem Donaldem Trumpem. Trump zároveň oznámil záměr zavést stoprocentní clo na polovodiče z dovozu.

    Ladislav Hagara | Komentářů: 2
    dnes 04:55 | Nová verze

    Zálohovací server Proxmox Backup Server byl vydán v nové stabilní verzi 4.0. Založen je na Debianu 13 Trixie.

    Ladislav Hagara | Komentářů: 0
    včera 16:33 | Nová verze

    Byla vydána nová verze 1.54.0 sady nástrojů pro správu síťových připojení NetworkManager. Novinkám se v příspěvku na blogu NetworkManageru věnuje Jan Václav.

    Ladislav Hagara | Komentářů: 0
    včera 14:11 | IT novinky

    Knižní edice správce české národní domény přináší novou knihu zkušeného programátora Pavla Tišnovského s názvem Programovací jazyk Go. Publikace nabízí srozumitelný a prakticky zaměřený pohled na programování v tomto moderním jazyce. Nejedná se však o klasickou učebnici, ale spíše o průvodce pro vývojáře, kteří s Go začínají, nebo pro ty, kdo hledají odpovědi na konkrétní otázky či inspiraci k dalšímu objevování. Tištěná i digitální verze knihy je již nyní k dispozici u většiny knihkupců.

    Ladislav Hagara | Komentářů: 2
    včera 13:11 | IT novinky

    OpenAI zpřístupnila (en) nové nenáročné otevřené jazykové modely gpt-oss (gpt-oss-120b a gpt-oss-20b). Přístupné jsou pod licencí Apache 2.0.

    Ladislav Hagara | Komentářů: 5
    včera 04:33 | Nová verze

    Byla vydána RC verze openSUSE Leap 16. S novým instalátorem Agama, Xfce nad Waylandem a SELinuxem.

    Ladislav Hagara | Komentářů: 0
    včera 03:44 | Nová verze

    Google Chrome 139 byl prohlášen za stabilní. Nejnovější stabilní verze 139.0.7258.66 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 12 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře. S verzí 139 přestal být podporován Android 8.0 (Oreo) a Android 9.0 (Pie).

    Ladislav Hagara | Komentářů: 0
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (40%)
     (24%)
     (4%)
     (6%)
     (3%)
     (1%)
     (1%)
     (21%)
    Celkem 268 hlasů
     Komentářů: 23, poslední 4.8. 13:01
    Rozcestník

    Dotaz: Oštření odhlášení uživatele v PHP

    30.3.2012 13:38 Host
    Oštření odhlášení uživatele v PHP
    Přečteno: 900×
    Dobrý den, pokud je uživatel přihlášený tak při každém načtení jakékoliv stránky kontroluji čas uložený v session který jsem vytvořil při přihlášení. Pokud je čas vyšší než čas který je nastaven pro odhlášení, dojde ke smazání session a uživatel je tak automaticky odhlášen a presměrován na přihlašovací stránku s oznámením, že byl z důvodu nečinnosti odhlášen, v opačném případě se v session nastaví aktuální čas jako při přihlášení. Pokud je čas nastaven třeba na 15 minut pro kontrolu aktivity uživatele a čas je o něco málo větší vše funguje ok, ale pokud je uživatel neaktivní třeba hodinu tak nastává problém. Stránka se sice na přihlášení do systému přesměruje ale již se nezobrazí hláška, která mu v normálním případě oznamuje, že byl z důvodu delší neaktivity odhlášen. Jako by se po delším čase sessiony všechny smazaly a php script topoté vyhodnotil jako že uživatel není přihlášený. Vůbec nevím co může být špatně. Poradí někdo? Díky

    # Přihlášení do systému
    if(....){
    # Data z formuláře se shoduji s daty v mysql
    $_SESSION['user_id'] = $id;
    $_SESSION['user_time'] = time();
    }
    # Kontrola aktivity
    function check_activities(){
    if(isset($_SESSION['user_time'])){
    if($_SESSION['user_time'] < (time() - LOGOUT_TIME)){
    unset($_SESSION['user_time']);
    echo "Byli jste automaticky odhlášeni ze systému z důvodu delší neaktivity!";
    }else{
    $_SESSION['user_time'] = time();
    }
    }
    }

    Odpovědi

    Josef Kufner avatar 30.3.2012 13:51 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Oštření odhlášení uživatele v PHP
    Namísto session použij svou vlastní přihlašovací cookie (session můžeš ponechat na ostatní věci). Při kontrole pak zjišťuj napřed přítomnost cookie a pak teprve záznam v databázi. Pokud cookie existuje a je neplatná, tak udělej odhlášení bez ohledu na to, co je v databázi.
    Hello world ! Segmentation fault (core dumped)
    30.3.2012 13:59 Host
    Rozbalit Rozbalit vše Re: Oštření odhlášení uživatele v PHP
    Tak to se omlouvám, ale vůbec jsem nepochopil tvou myšlenku..
    Josef Kufner avatar 30.3.2012 19:44 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Oštření odhlášení uživatele v PHP
    Uložíš si informaci o tom, že byl klient přihlášený u něj, takže i když ti expiruje session, tak to budeš vědět (klient ti tu cookie pošle zpět) a můžeš ho poslat na přihlašovací stránku.
    Hello world ! Segmentation fault (core dumped)
    30.3.2012 14:04 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Oštření odhlášení uživatele v PHP
    Co je špatně:
    může se jednat o platnost session COOKIE, která je definována v php.ini, a můžete ovlivnit pomocí session_set_cookie_params();
    ale daleko pravděpodobněji o platnost session, což je možné ze skriptu ovlivnit pomocí ini_set(’session.gc_maxlifetime’, 2400);.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    Josef Kufner avatar 30.3.2012 19:54 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Oštření odhlášení uživatele v PHP
    Tím ale zbytečně zvyšuje zátěž serveru, protože si musí pamatovat více session a to znamená více souborů na disku k ohlídání.

    Záleží sice na povaze aplikace jak moc rozumné to je, ale pokud si takovou session vyrobí pro každého uživatele, který jen projde kolem, může se z toho server celkem zadýchat.

    Lepší je nechat session platnou nějak rozumně málo a pokud uživatel dělá něco hodně dlouho na jedné stránce, tak tam udělat třeba průběžné ukládání na server, čímž se jednak prodlouží session a také uživatel neztratí svou práci při pádu prohlížeče nebo spojení.
    Hello world ! Segmentation fault (core dumped)
    30.3.2012 20:09 Kit
    Rozbalit Rozbalit vše Re: Oštření odhlášení uživatele v PHP
    Více session nemusí být problém. Jsou to většinou jen malé soubory v adresáři, při větší zátěži je možné je uložit do nějaké databáze. A nemusí to být jen MySQL. Session v ramdisku může být také zajímavou variantou.

    Průběžné ukládání se dá realizovat například pomocí AJAXu, který se aplikacích vyskytuje poměrně často. Stačí například pravidelně obnovovat počitadlo přijatých zpráv v kratším intervalu, než je platnost session. Průběžné ukládání rozepsaného textu je také zajímavou možností.
    30.3.2012 20:30 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Oštření odhlášení uživatele v PHP
    Neřeším co uživatel dělá, jen jsem odpovídal „co je špatně“ a jak jsem si to přeložil „proč se to děje“.
    Nicméně „více souborů na disku k ohlídání“ - to nic není, jestli je tam 1000 souborů nebo 3000 souborů žádný server nezabije (pokud to není nějaký server s 10000 přístupy / hodinu).

    S poslední větou samozřejmě souhlasím.
    Obvykle to ženu opačným směrem než tazatel, zkracuji životnost až na několik minut, aplikace si pinká (omezenou dobu) a oživuje platnost, a uživatel si může obnovit tuto dobu, nebo se mu sama při akci obnoví.
    Např. Životnost session jen 10 min (PHPSSID cookie třeba 20 min), platnost přihlášení 7 min aplikace co 3 min pinkne na server a dělá to sama ½ hodiny (½ hodiny se obnoví uživatelskou akcí) ... za 33 min je uživatel odhlášen. Trochu to samozřejmě zatěžuje server zbytečnými požadavky (, které jsou ovšem velmi malé a nenáročné), nicméně je naprosto jasné i na straně serveru/aplikace kdo žije a kdo i něco dělá.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    Josef Kufner avatar 30.3.2012 22:53 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Oštření odhlášení uživatele v PHP
    Pokud by někdo nastavil životnost session na pár dní, aby přihlášení přežilo do další návštěvy, tak by to znamenalo už desítky tisíc souborů při cca tisícovce unikátních návštěv za hodinu. To už na výkonu může být znát. Také to bude žrát pár desítek až stovek megabajtů prostoru (i když prostý součet délek souborů bude malý) a hromady malých souborů nejsou pro souborové systémy zrovna ideální.
    Hello world ! Segmentation fault (core dumped)
    31.3.2012 12:46 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Oštření odhlášení uživatele v PHP
    Popravdě, nenapadl mě takový extrém nastavit životnost session na několik dní :( to bylo dost ujeté.
    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.