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 11:44 | Nová verze

    Byla vydána nová verze 25.05.11 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. Nejnovější Shotcut je již vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

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

    Svobodný elektronický platební systém GNU Taler (Wikipedie, cgit) byl vydán ve verzi 1.0. GNU Taler chrání soukromí plátců a zároveň zajišťuje, aby byl příjem viditelný pro úřady. S vydáním verze 1.0 byl systém spuštěn ve Švýcarsku.

    Ladislav Hagara | Komentářů: 0
    dnes 00:55 | Pozvánky

    Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 209. brněnský sraz, který proběhne tento pátek 16. května od 18:00 ve studentském klubu U Kachničky na Fakultě informačních technologií Vysokého učení technického na adrese Božetěchova 2/1. Jelikož se Brno stalo jedním z hlavních míst, kde se vyvíjí open source knihovna OpenSSL, tentokrát se OpenAlt komunita potká s komunitou OpenSSL. V rámci srazu Anton Arapov z OpenSSL

    … více »
    Ladislav Hagara | Komentářů: 0
    dnes 00:22 | Komunita

    GNOME Foundation má nového výkonného ředitele. Po deseti měsících skončil dočasný výkonný ředitel Richard Littauer. Vedení nadace převzal Steven Deobald.

    Ladislav Hagara | Komentářů: 2
    10.5. 15:00 | Zajímavý článek

    Byl publikován přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie) za uplynulé dva měsíce. Servo zvládne už i Gmail. Zakázány jsou příspěvky generované pomocí AI.

    Ladislav Hagara | Komentářů: 12
    9.5. 17:22 | Nová verze

    Raspberry Pi Connect, tj. oficiální služba Raspberry Pi pro vzdálený přístup k jednodeskovým počítačům Raspberry Pi z webového prohlížeče, byla vydána v nové verzi 2.5. Nejedná se už o beta verzi.

    Ladislav Hagara | Komentářů: 4
    9.5. 15:22 | Komunita

    Google zveřejnil seznam 1272 projektů (vývojářů) od 185 organizací přijatých do letošního, již jednadvacátého, Google Summer of Code. Plánovaným vylepšením v grafických a multimediálních aplikacích se věnuje článek na Libre Arts.

    Ladislav Hagara | Komentářů: 0
    8.5. 19:22 | Nová verze

    Byla vydána (𝕏) dubnová aktualizace aneb nová verze 1.100 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.100 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    8.5. 18:00 | Nová verze

    Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.5.

    Ladislav Hagara | Komentářů: 0
    8.5. 01:22 | Nová verze Ladislav Hagara | Komentářů: 0
    Jaký filesystém primárně používáte?
     (58%)
     (1%)
     (8%)
     (22%)
     (4%)
     (2%)
     (3%)
     (1%)
     (1%)
     (3%)
    Celkem 586 hlasů
     Komentářů: 26, poslední 8.5. 09:58
    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: 561×
    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: 45 | 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: 45 | 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: 45 | 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.