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:00 | Upozornění

    Národní identitní autorita, tedy NIA ID, MeG a eOP jsou nedostupné. Na nápravě se pracuje [𝕏].

    Ladislav Hagara | Komentářů: 3
    dnes 16:44 | IT novinky

    Americký výrobce čipů Nvidia se stal první firmou na světě, jejíž tržní hodnota dosáhla pěti bilionů USD (104,5 bilionu Kč). Nvidia stojí v čele světového trhu s čipy pro umělou inteligenci (AI) a výrazně těží z prudkého růstu zájmu o tuto technologii. Nvidia již byla první firmou, která překonala hranici čtyř bilionů USD, a to letos v červenci.

    Ladislav Hagara | Komentářů: 3
    dnes 14:11 | Komunita

    Po Canonicalu a SUSE oznámil také Red Hat, že bude podporovat a distribuovat toolkit NVIDIA CUDA (Wikipedie).

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

    TrueNAS (Wikipedie), tj. open source storage platforma postavená na Linuxu, byl vydán ve verzi 25.10 Goldeye. Přináší NVMe over Fabric (NVMe-oF) nebo OpenZFS 2.3.4.

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

    Byla vydána OpenIndiana 2025.10. Unixový operační systém OpenIndiana (Wikipedie) vychází z OpenSolarisu (Wikipedie).

    Ladislav Hagara | Komentářů: 0
    dnes 13:22 | Zajímavý článek

    České základní a střední školy čelí alarmujícímu stavu kybernetické bezpečnosti. Až 89 % identifikovaných zranitelností v IT infrastruktuře vzdělávacích institucí dosahuje kritické úrovně, což znamená, že útočníci mohou vzdáleně převzít kontrolu nad klíčovými systémy. Školy navíc často provozují zastaralé technologie, i roky nechávají zařízení bez potřebných aktualizací softwaru a používají k nim pouze výchozí, všeobecně známá

    … více »
    Ladislav Hagara | Komentářů: 8
    dnes 05:11 | Komunita

    Během tradiční ceremonie k oslavě Dne vzniku samostatného československého státu (28. října) byl vyznamenán medailí Za zásluhy (o stát v oblasti hospodářské) vývojář 3D tiskáren Josef Průša. Letos byly uděleny pouze dvě medaile Za zásluhy o stát v oblasti hospodářské, druhou dostal informatik a manažer Ondřej Felix, který se zabývá digitalizací státní správy.

    🇹🇬 | Komentářů: 34
    dnes 04:44 | Nová verze

    Tor Browser, tj. fork webového prohlížeče Mozilla Firefox s integrovaným klientem sítě Tor přednastavený tak, aby přes tuto síť bezpečně komunikoval, byl vydán ve verzi 15.0. Postaven je na Firefoxu ESR 140.

    Ladislav Hagara | Komentářů: 3
    včera 16:44 | Nová verze

    Bylo oznámeno (cs) vydání Fedora Linuxu 43. Ve finální verzi vychází šest oficiálních edic: Fedora Workstation a Fedora KDE Plasma Desktop pro desktopové, Fedora Server pro serverové, Fedora IoT pro internet věcí, Fedora Cloud pro cloudové nasazení a Fedora CoreOS pro ty, kteří preferují neměnné systémy. Vedle nich jsou k dispozici také další atomické desktopy, spiny a laby. Podrobný přehled novinek v samostatných článcích na stránkách Fedora Magazinu: Fedora Workstation, Fedora KDE Plasma Desktop, Fedora Silverblue a Fedora Atomic Desktops.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | IT novinky

    Elon Musk oznámil (𝕏) spuštění internetové encyklopedie Grokipedia (Wikipedia). Zatím ve verzi 0.1. Verze 1.0 prý bude 10x lepší, ale i ve verzi 0.1 je podle Elona Muska již lepší než Wikipedia.

    Ladislav Hagara | Komentářů: 22
    Jaké řešení používáte k vývoji / práci?
     (36%)
     (48%)
     (20%)
     (19%)
     (23%)
     (17%)
     (21%)
     (17%)
     (17%)
    Celkem 281 hlasů
     Komentářů: 14, poslední 14.10. 09:04
    Rozcestník

    Dotaz: Jak naplnit pole v PHP daty z Mysql

    23.3.2014 19:34 Marián
    Jak naplnit pole v PHP daty z Mysql
    Přečteno: 591×
    Ahoj, poradí prosím někdo zkušený, jak bych mohl naplnit takové pole daty uložené v MySQL?
         $array = array('aaa' => array('a' => 'a-aaa', 'b' => 'b-aaa'),
                        'bbb' => array('a' => 'a-bbb', 'b' => 'b-bbb'),
                        'ccc' => array('a' => 'a-ccc', 'b' => 'b-ccc'),
                        'ddd' => array('a' => 'a-ddd', 'b' => 'b-ddd'),
                        'eee' => array('a' => 'a-ccc', 'b' => 'b-eee'));
    Děkuji za pomoc

    Odpovědi

    Josef Kufner avatar 23.3.2014 19:51 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jak naplnit pole v PHP daty z Mysql
    Postav dotaz tak, aby první sloupeček obsahoval klíče vnějšího pole ('aaa') a pak použij:
    $array = $pdo->fetchAll(PDO::FETCH_ASSOC | PDO::FETCH_GROUP);
    Pokud to nebude vyhovovat, tak prostě volej obyčejné fetch a skládej si to pole dle libosti.
    Hello world ! Segmentation fault (core dumped)
    23.3.2014 20:30 Marián
    Rozbalit Rozbalit vše Re: Jak naplnit pole v PHP daty z Mysql
    Díky ale vůbec jsem nepochopil tvou radu :-(
    27.3.2014 11:41 Marián
    Rozbalit Rozbalit vše Re: Jak naplnit pole v PHP daty z Mysql
    Postav dotaz tak, aby první sloupeček obsahoval klíče vnějšího pole ('aaa') a pak použij:
    $array = $pdo->fetchAll(PDO::FETCH_ASSOC | PDO::FETCH_GROUP);
    Když použiju tvé řešení které je mimo jiné parádní
    $array = $pdo->fetchAll(PDO::FETCH_ASSOC | PDO::FETCH_GROUP);
    dostanu takové pole
    array('key1' => array(0 => array('sloupec1' => 'data1', 'sloupec2' => 'data2', 'sloupec3' => 'data3', 'sloupec4' => 'data4',),),
          'key2' => array(0 => array('sloupec1' => 'data1', 'sloupec2' => 'data2', 'sloupec3' => 'data3', 'sloupec4' => 'data4',),),
          'key3' => array(0 => array('sloupec1' => 'data1', 'sloupec2' => 'data2', 'sloupec3' => 'data3', 'sloupec4' => 'data4',),),
         )
    Jak ale můžu získat jen tohle? Bez tohoto: "array(0 =>"

    a výsledek by pak byl takovej
    array('key1' => array('sloupec1' => 'data1', 'sloupec2' => 'data2', 'sloupec3' => 'data3', 'sloupec4' => 'data4',),
          'key2' => array('sloupec1' => 'data1', 'sloupec2' => 'data2', 'sloupec3' => 'data3', 'sloupec4' => 'data4',),
          'key3' => array('sloupec1' => 'data1', 'sloupec2' => 'data2', 'sloupec3' => 'data3', 'sloupec4' => 'data4',),
         )
    Díky
    Josef Kufner avatar 27.3.2014 12:34 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jak naplnit pole v PHP daty z Mysql
    Tomu se věnuje hned první komentář v dokumentaci fetchAll:
    $results = array_map('reset', $results);
    Sice to je celkem krátké, ale přináší to zbytečnou režii navíc.

    Otázkou je, o kolik je fetchAll s FETCH_GROUP rychlejší, než volání obyčejného fetch a vlastního skládání pole.
    Hello world ! Segmentation fault (core dumped)
    23.3.2014 19:52 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Jak naplnit pole v PHP daty z Mysql
    Však už ho máš naplněné. Nepleteš si náhodou databázi s nějakým úložištěm?
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    23.3.2014 20:30 Marián
    Rozbalit Rozbalit vše Re: Jak naplnit pole v PHP daty z Mysql
    To mělo sloužit jako mustr, nic víc...
    23.3.2014 20:49 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Jak naplnit pole v PHP daty z Mysql
    Tahat z databáze celou tabulku je obvykle zbytečné, ale když už to tak musíš mít, zkus tohle:
    <php
    $array = array();
    foreach ($pdo->query('SELECT aaa, a, b FROM Array', PDO::FETCH_ASSOC) as $row) {
        $aaa = $row['aaa'];
        $array[$aaa] = array('a' => $row['a'], 'b' => $row['b']);
    }
    
    Vypadá to podivně, ale kdybys byl vymyslel lepší názvy proměnných, bylo by to vypadalo lépe.

    Časem určitě zjistíš, že tohle nepotřebuješ a že se to dá udělat mnohem jednodušeji, když trochu změníš vstupní požadavky. Už pojmenování slovníku $array zní podivně. Podivné je i to, že chceš slovník a ne seznam.

    Možná by se pro tento účel mnohem lépe hodilo XML nebo INIFILE.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    23.3.2014 20:55 Marián
    Rozbalit Rozbalit vše Re: Jak naplnit pole v PHP daty z Mysql
    Díky za pomoc, jdu to vyzkoušet..
    Podivné je i to, že chceš slovník a ne seznam.
    Můžeš to prosím upřesnit?
    Možná by se pro tento účel mnohem lépe hodilo XML nebo INIFILE.
    Jako že to mám uložit místo do mysql do XML souboru?
    23.3.2014 21:06 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: Jak naplnit pole v PHP daty z Mysql
    Pole, seznam a slovník jsou 3 datové struktury, které se v PHP dají vytvořit pomocí array(). Každá by měla být pojmenována podle toho, co je v ní uchováno. Název "$array" je úplně nesmyslný, zejména pro tvůj slovník. Takový název proměnné by se v aplikaci neměl vyskytovat.

    Pokud to vždy potřebuješ nacucnou všechno naráz, tak je XML mnohem vhodnější než databáze a INIFILE také. Načteš je zavoláním jedné funkce. Pokud však potřebuješ jen několik řádek nebo potřebuješ dělat nějaké operace s daty, je výhodnější databáze.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    4.4.2014 11:33 JV
    Rozbalit Rozbalit vše Re: Jak naplnit pole v PHP daty z Mysql
    Ahoj. Pri pouziti takoveho pole je mozno ziskat i nazev klice pri prochazeni foreach-em ?

    array('key1' => array(0 => array('sloupec1' => 'data1', 'sloupec2' => 'data2', 'sloupec3' => 'data3', 'sloupec4' => 'data4',),),
          'key2' => array(0 => array('sloupec1' => 'data1', 'sloupec2' => 'data2', 'sloupec3' => 'data3', 'sloupec4' => 'data4',),),
          'key3' => array(0 => array('sloupec1' => 'data1', 'sloupec2' => 'data2', 'sloupec3' => 'data3', 'sloupec4' => 'data4',),),
         )
    foreach ($array as $row) {
     echo $row['sloupec1']; //data1
     echo $row['sloupec2']; //data2
     echo ???               //key1
    }
    4.4.2014 12:05 Lucius
    Rozbalit Rozbalit vše Re: Jak naplnit pole v PHP daty z Mysql
    foreach ($array as $key => $row)
    4.4.2014 12:14 JV
    Rozbalit Rozbalit vše Re: Jak naplnit pole v PHP daty z Mysql
    Díky. To jsem zkousel, ale zase nevypisu ty jednotlive sloupce :-(
    4.4.2014 12:22 Lucius
    Rozbalit Rozbalit vše Re: Jak naplnit pole v PHP daty z Mysql
    protoze v row mas to prvni vnorene pole - jim pak muzes prochazet zase treba pres foreach, nebo pouzit list ap.

    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.