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 12:55 | Nová verze

    CiviCRM (Wikipedie) bylo vydáno v nové verzi 6.14.0. Podrobnosti o nových funkcích a opravách najdete na release stránce. CiviCRM je robustní open-source CRM systém navržený speciálně pro neziskové organizace, spolky a občanské iniciativy. Projekt je napsán v jazyce PHP a licencován pod GNU Affero General Public License (AGPLv3). Český překlad má nyní 45 % přeložených řetězců a přibližuje se milníku 50 %. Potřebujeme vaši pomoc, abychom se dostali dál. Pokud máte chuť přispět překladem nebo korekturou, přidejte se na platformu Transifex.

    jardaIT | Komentářů: 0
    dnes 12:22 | Bezpečnostní upozornění

    Další lokální zranitelností Linuxu je ssh-keysign-pwn. Uživatel si může přečíst obsah souborů, ke kterým má právo ke čtení pouze root, například soubory s SSH klíči nebo /etc/shadow. V upstreamu již opraveno [oss-security mailing list].

    Ladislav Hagara | Komentářů: 0
    včera 17:22 | Komunita

    Singularity (YouTube) je nejnovější otevřený film od Blender Studia. Jedná se o jejich první 4K HDR film.

    Ladislav Hagara | Komentářů: 0
    včera 16:55 | Zajímavý software

    Vyšla hra Život Není Krásný: Poslední Exekuce (Steam, ProtonDB). Kreslená point & click adventura ze staré školy plná černého humoru a nekorektního násilí. Vžijte se do role zpustlého exekutora Vladimíra Brehowského a projděte s ním jeho poslední pracovní den. Hra volně navazuje na sérii Život Není Krásný.

    Ladislav Hagara | Komentářů: 22
    včera 14:00 | Zajímavý projekt

    Společnost Red Hat představila Fedora Hummingbird, tj. linuxovou distribuci s nativním kontejnerovým designem určenou pro vývojáře využívající AI agenty.

    Pinhead | Komentářů: 6
    včera 02:22 | Zajímavý software

    Hru The Legend of Zelda: Twilight Princess od společnosti Nintendo si lze nově díky projektu Dusklight (původně Dusk) a reverznímu inženýrství zahrát i na počítačích a mobilních zařízeních. Vyžadována je kopie původní hry (textury, modely, hudba, zvukové efekty, …). Ukázka na YouTube. Projekt byl zahájen v srpnu 2020.

    Ladislav Hagara | Komentářů: 0
    včera 01:11 | Nová verze

    Byla vydána nová major verze 29.0 programovacího jazyka Erlang (Wikipedie) a související platformy OTP (Open Telecom Platform, Wikipedie). Detailní přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 0
    13.5. 21:22 | Bezpečnostní upozornění

    Po zranitelnostech Copy Fail a Dirty Frag přichází zranitelnost Fragnesia. Další lokální eskalace práv na Linuxu. Zatím v upstreamu neopravena. Přiřazeno ji bylo CVE-2026-46300.

    Ladislav Hagara | Komentářů: 1
    13.5. 14:00 | Komunita

    Sovereign Tech Agency (Wikipedie) prostřednictvím svého fondu Sovereign Tech Fund podpoří KDE částkou 1 285 200 eur.

    Ladislav Hagara | Komentářů: 11
    13.5. 12:55 | IT novinky

    Google na včerejší akci The Android Show | I/O Edition 2026 (YouTube) představil celou řadu novinek: Gemini Intelligence, notebooky Googlebook, novou generaci Android Auto, …

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (13%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (6%)
     (3%)
     (16%)
     (26%)
    Celkem 1632 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: PHP rand() - tá istá hodnota v dvoch cykloch

    23.3.2015 20:50 Peter
    PHP rand() - tá istá hodnota v dvoch cykloch
    Přečteno: 417×
    Dobrý deň vám prajem.

    Mám v PHP napísané odosielanie SMS pomocou našej GSM brány a po neúspešnom pátraní prečo nám neodošle niektoré SMS som zistil prečo. Časť kódu vyzerá nasledovne:

    index.php
    require('./function.php');
    smssend($db,$_POST['number'],$_POST['message']);
    
    function.php
    function smssend($db,$number,$message) {
      $stamp=date('YmdHis').rand(11111111111111,99999999999999);
    
      .
      .
      .
    }
    
    Najdôležitejšie je na mojej otázke práve to generovanie premennej $stamp, ktorá je na generovanie názvu súboru pre smstools3. V jednej sekunde odošlem napríklad 100 požiadaviek na index.php a v každom "cykle" mi vygeneruje rôznu rand hodnotu, čiže dostanem takéto niečo:
    20150323102030123456789
    20150323102030987654321
    20150323102030192837465
    .
    .
    .
    
    A zasa v ďalšej sekunde dostanem takéto niečo:
    20150323102040123456789
    20150323102040123456789
    20150323102040123456789
    
    Som blázon ja, alebo PHP?

    Vopre veľmi pekne ďakujem za pomoc.

    Odpovědi

    23.3.2015 21:42 chrono
    Rozbalit Rozbalit vše Re: PHP rand() - tá istá hodnota v dvoch cykloch
    Ak to nie je na serveri s Windows, tak by sa niečo také nemalo stávať (každopádne aj na Linuxe je 11111111111111 pravdepodobne nad maximálnou hodnotou, ktorú tá funkcia vie vrátiť, takže sa musí hodnota vygenerovaná generátorom náhodných čísel vynásobiť, aby bola v tom rozsahu ), každopádne asi by bolo rozumnejšie používať funkciu mt_rand.
    24.3.2015 08:17 gsnak | skóre: 22 | blog: gsnak
    Rozbalit Rozbalit vše Re: PHP rand() - tá istá hodnota v dvoch cykloch
    Čo Rys, to vrah!
    24.3.2015 09:07 DarkKnight | skóre: 26
    Rozbalit Rozbalit vše Re: PHP rand() - tá istá hodnota v dvoch cykloch
    getRandomNumber()

    Jak uz bylo zminene, getrandmax() muze byt mensi na jinych platformach, takze mt_rand() by bylo lepsi. Nicmene tady bude spis problem v pseudogeneratoru, kde bude predvidatelny seed (treba podle sekund), muzes zkusit pouzit srand(), treba hned podle toho prvniho prikladu
    24.3.2015 12:18 Lucius
    Rozbalit Rozbalit vše Re: PHP rand() - tá istá hodnota v dvoch cykloch
    Mimo uz receneho jeste poznamka - zadny generator nahodnych cisel negarantuje unikatnost - kontrolu unikatnosti musite doprogramovat, nahodne cislo je cislo vybrane z nejakeho rozsahu a muze se opakovat. Takze jestli potrebujete, aby bylo v kazdem kroku jine, tak to musite pohlidat a v pripade, ze se nejake opakuje, tak si nechat vygenerovat jine. Nebo pouzit generovani nejakeho unikatniho identifikatoru.
    24.3.2015 14:00 R
    Rozbalit Rozbalit vše Re: PHP rand() - tá istá hodnota v dvoch cykloch
    Pre tento ucel som pouzival toto:
    $filename = tempnam($queue_dir, date('YmdHis').'-'.$cislo_pre_sms.'-');
    
    24.3.2015 21:19 Bill Gates
    Rozbalit Rozbalit vše Re: PHP rand() - tá istá hodnota v dvoch cykloch
    proc nepouzit napriklad citac mikrosekund misto rand?

    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.