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 14:33 | Zajímavý software

    Do 30. května lze v rámci akce Warhammer Skulls 2024 získat na Steamu zdarma hru Warhammer 40,000: Gladius - Relics of War.

    Ladislav Hagara | Komentářů: 0
    dnes 13:33 | Nová verze

    HelenOS (Wikipedie), tj. svobodný operační systém českého původu založený na architektuře mikrojádra, byl vydán ve verzi 0.14.1. Přehled novinek v poznámkách k vydání. Vypíchnou lze nabídku Start. Videopředstavení na YouTube.

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

    BreadboardOS je firmware pro Raspberry Pi Pico (RP2040) umožňující s tímto MCU komunikovat pomocí řádkového rozhraní (CLI). Využívá FreeRTOS a Microshell.

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

    Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 24.05. Přehled novinek i s náhledy a videi v oficiálním oznámení. Do balíku se dostalo 5 nových aplikací: Audex, Accessibility Inspector, Francis, Kalm a Skladnik.

    Ladislav Hagara | Komentářů: 2
    včera 12:55 | Nová verze

    Byla vydána (𝕏) nová verze 18.0.0 open source webového aplikačního frameworku Angular (Wikipedie). Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    22.5. 23:44 | Pozvánky

    V neděli 26. května lze navštívit Maker Faire Rychnov nad Kněžnou, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

    Ladislav Hagara | Komentářů: 0
    22.5. 16:33 | Nová verze

    Byla vydána nová stabilní verze 3.20.0, tj. první z nové řady 3.20, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Z novinek lze vypíchnou počáteční podporu 64bitové architektury RISC-V.

    Ladislav Hagara | Komentářů: 0
    22.5. 14:11 | IT novinky

    Společnost Jolla na akci s názvem Jolla Love Day 2 - The Jolla comeback představila telefon se Sailfish OS 5.0 Jolla Community Phone (ve spolupráci se společností Reeder) a počítač Jolla Mind2 Community Edition AI Computer.

    Ladislav Hagara | Komentářů: 13
    22.5. 12:33 | Nová verze

    LibreOffice 24.8 bude vydán jako finální v srpnu 2024, přičemž LibreOffice 24.8 Alpha1 je první předběžnou verzí od začátku vývoje verze 24.8 v prosinci 2023. Od té doby bylo do úložiště kódu odesláno 4448 commitů a více než 667 chyb bylo v Bugzille nastaveno jako opravené. Nové funkce obsažené v této verzi LibreOffice najdete v poznámkách k vydání.

    ZCR | Komentářů: 0
    21.5. 23:33 | Nová verze

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

    Ladislav Hagara | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (82%)
     (4%)
     (7%)
     (7%)
    Celkem 524 hlasů
     Komentářů: 16, poslední 14.5. 11:05
    Rozcestník

    Dotaz: Formát datumu a času v sql dotazu b PHP

    19.11.2014 16:51 Orlando
    Formát datumu a času v sql dotazu b PHP
    Přečteno: 803×
    Ahoj všem. Kdysi jsem našel způsob, jak změnit přímo v sql dotazu formát sloupce datetime, hledám, hledám ale nemlžu najít to sprábké klíčové slovo :-( Poradí někdo? Ihmo: co použít při vkládání nového údaje pro ten sloupec datetime? NOW() ? Díky

    Odpovědi

    Tarmaq avatar 19.11.2014 18:43 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Formát datumu a času v sql dotazu b PHP
    vubec jsi nenapsal o jakou db se jedna, pro MySQL by snad melo byt funkcni reseni s funkci DATE_FORMAT().
    Don't panic!
    19.11.2014 20:28 Orlando
    Rozbalit Rozbalit vše Re: Formát datumu a času v sql dotazu b PHP
    Omluva, jedná se opravdu o mysql, díky moc. a to vložení nového datumu?
    19.11.2014 21:01 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Formát datumu a času v sql dotazu b PHP
    Nové datum vložíš takové, jaké potřebuješ a pokud potřebuješ fčil vložíš Now().

    Možná by tě zajímal rozdíl:

    SELECT NOW(), SLEEP(3), NOW();
    vs.
    SELECT SYSDATE(), SLEEP(3), SYSDATE();

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    19.11.2014 21:38 Orlando
    Rozbalit Rozbalit vše Re: Formát datumu a času v sql dotazu b PHP
    Díky, ano potřebuji to vložit fčijek :-D ale píše to, že neexistuje funkce NOW();
    $sql = "INSERT INTO t (a, b, c, d) VALUES (:a, :b, :c, :d)";
    $query = $this->db->prepare($sql);
    $parameters = array(':a' => $a, ':b' => $b, ':c' => $c, ':d' => NOW());
    19.11.2014 21:41 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Formát datumu a času v sql dotazu b PHP
    $sql = "INSERT INTO t (a, b, c, d) VALUES (:a, :b, :c, NOW())";
    ?
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    19.11.2014 21:50 Orlando
    Rozbalit Rozbalit vše Re: Formát datumu a času v sql dotazu b PHP
    Díky, hnet to idu vyzkůšat :-D

    BTW: Když budu mít v POSTu formát '19.11 2014 10:10:10' jak to můžu updatovat do mysql, nemyslím sql dotaz ale jen ten datum, jde nějak použít třeba

    $var = date('19.11 2014 10:10:10'); ? Díky
    19.11.2014 21:55 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Formát datumu a času v sql dotazu b PHP
    Nerozumím řeči tvého kmene.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    19.11.2014 22:36 Orlando
    Rozbalit Rozbalit vše Re: Formát datumu a času v sql dotazu b PHP
    Pokud budu potřebovat editovat datum v mysql a načtu data do formuláře, tak načtu datum v českém tvaru, ten opravím a potřebuji ho zase nějak překonvertovat do tvaru v jakém je uložen v mysql (sloupec je typu datetime). Je to lépe k pochopení ? Díky
    20.11.2014 10:22 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Formát datumu a času v sql dotazu b PHP

    Jenda ti už něco níže písnul, osobně reálná čísla měnu a datum/čas jsem vždy táhal přes nějaký vlastní třídu, (která obalila třeba i některé PHP-kové). Dříve jsem to měl součástí db-providera, kde existovali tři get/set klient/PHP/DB.

    V jednoduchém případě jedu vždy přes ISO 8601 'YYYY-MM-DDThh:mm:ss' s tím, že někdy z různých důvodů vynechávám to 'T'. a pokud to lze, razím tezi, že i uživatel by si měl zvyknout na YYYY-MM-DD hh:mm:ss, protože tak se nezaměnitelně domluvém všichni, no a když to nelze, tak se holt musí šupačit tam a zpět, ale dělám to v aplikační vrstvě, ne v DB (i když ji případně využiji na ověření kdovíčeho).

    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    20.11.2014 10:24 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Formát datumu a času v sql dotazu b PHP
    Sorry - oprava ne Jenda, ale Josef Kufner.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    Josef Kufner avatar 20.11.2014 00:14 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Formát datumu a času v sql dotazu b PHP
    Pokud se bavíme o MySQL a časech v blízké budoucnosti i minulosti, nejlépe se hotí sloupec typu TIMESTAMP.

    S tím však souvisí správné nastavení časových pásem. V PHP musíš mít nastaveno 'Europe/Prague' a v MySQL totéž. Aby to prošlo, je potřeba do MySQL naimportovat informace o nich. A rozhodně nenastavuj časové pásmo pomocí číselného offsetu.

    Potom z a do MySQL můžeš předávat čas ve formátu dle ISO 8601. V PHP se pak hodí strtotime() a strftime(), přičemž čas budeš uchovávat v proměnné buď jako string, a nebo jako unixový timestamp.

    Pro zobrazení času můžeš použít například:
    echo strftime(_('%d. %m. %Y %H:%M'), strtotime($iso_string));
    Pokud zadá uživatel datum do formuláře, nabízí se dvě možnosti: Buď ho dostaneš v ISO formátu (JS selector nebo HTML5 input typu datetime), nebo ho dostaneš v lokalizovaném tvaru. V prvním případě ho rovnou pošli do databáze, v tom druhém máš dvě možnosti: Spolehnout se na strtotime() nebo vzít formátovací řetězec a použít strptime(). Obvykle je strtotime() dostatečně schopné. Jakmile máš timestamp, je snadné ho dostat do MySQL:
    $flupdo->where('timestamp_sloupec = ?',
        strftime('%Y-%m-%d %H:%M:%S', strtotime($_POST['timestamp_policko'])));
    Ještě lepší je, když strtotime() a strftime() jsou součástí validace a formátování formuláře, takže z něj vždy leze validní ISO 8601 string. A v logice aplikace pak už s časem nijak nemanipuluješ a předáš ho databázi tak, jak je.
    Hello world ! Segmentation fault (core dumped)
    19.11.2014 21:39 Orlando
    Rozbalit Rozbalit vše Re: Formát datumu a času v sql dotazu b PHP
    úklep: fčilejk :-D
    20.11.2014 12:43 Orlando
    Rozbalit Rozbalit vše Re: Formát datumu a času v sql dotazu b PHP
    Díky moc za velmi užitečné rady! Jinak jsem nahodou narazil na tohle

    Převod řetězce na datum

    Někdy je potřeba rychle naformátovat nějaký řetězec do jiné podoby. Můžeme mí datum ve formátu Wed, 12 Dec 2007 08:00:00 GMT. Přeformátování provedeme následujícím skriptem:

    $date = "Wed, 12 Dec 2007 08:00:00 GMT";
    $date = strtotime($date);
    $date = StrFTime("%d.%c.%Y %H:%M:%S", $date);
    //12.12.2007 08:00:00
    Zdroj jsem našel zde, tak třeba se to někomu hodí ;-)
    20.11.2014 12:45 Orlando
    Rozbalit Rozbalit vše Re: Formát datumu a času v sql dotazu b PHP
    Teď mne tak napadlo, doufám, že jsem neporušil nějaká autorská práva. Pokud ano, prosím admina o smazání ;-)
    20.11.2014 13:04 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Formát datumu a času v sql dotazu b PHP
    Tohle nefunguje. Nechápu, proč tam máš 3× stejnou proměnnou na levé straně. To pořád cpeš do jedné proměnné? Fuj.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    20.11.2014 13:34 Orlando
    Rozbalit Rozbalit vše Re: Formát datumu a času v sql dotazu b PHP
    Mě to tada funguje partádně, navíc já šetřím paměť, a proměnné nepřepisuju, jinak ten kód není můj, je to original co jsem sem pastnul..
    20.11.2014 14:46 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Formát datumu a času v sql dotazu b PHP
    Možná máš jinak nastavenou lokalizaci.

    Místo čísla 12 bych dal jiné číslo, aby bylo jasně vidět, co je den a co je měsíc. Datum 12.12. se na testování funkčnosti vůbec nehodí. Když použiješ 10, tak hned vidíš, jestli se ti uloží 10. prosince nebo 12. října. Ze stringu "12.12." nevidíš nic.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.

    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.