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

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

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

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

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

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

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

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 3
    včera 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | IT novinky

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

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

    Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.

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

    Byla vydána nová verze 6.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.14.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána nová verze 30.0.0 frameworku pro vývoj multiplatformních desktopových aplikací pomocí JavaScriptu, HTML a CSS Electron (Wikipedie, GitHub). Chromium bylo aktualizováno na verzi 124.0.6367.49, V8 na verzi 12.4 a Node.js na verzi 20.11.1. Electron byl původně vyvíjen pro editor Atom pod názvem Atom Shell. Dnes je na Electronu postavena celá řada dalších aplikací.

    Ladislav Hagara | Komentářů: 2
    včera 04:11 | Nová verze

    Byla vydána nová verze 9.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 220 vývojářů. Provedeno bylo více než 2 700 commitů. Přehled úprav a nových vlastností v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (72%)
     (9%)
     (2%)
     (17%)
    Celkem 729 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: PDO - Jak získat data z více řádků

    30.10.2013 12:11 Martin
    PDO - Jak získat data z více řádků
    Přečteno: 331×
    Ahoj, snažím se získat data z mysql pomocí PDO, no tento způsob není asi košer, poradí někdo lepší řešení? Děkuji
    $stmt = $pdo->prepare($sql);
    $stmt->execute();
    $row = $stmt->fetchAll();
    
    if ($row === false)
        throw new Exception('Žádná data neexistují!');
    $c = count($row);
    for ($i = 0; $i < $c; $i++ ){
        $this->pageContent .= $row[$i]['date'].
                              $row[$i]['text'];
    }

    Odpovědi

    Tarmaq avatar 30.10.2013 12:26 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: PDO - Jak získat data z více řádků
    $stmt = $pdo->prepare($sql);
    $stmt->execute();
    $this->pageContent = '';
    foreach ($stmt->fetchAll() as $row) {
      $this->pageContent .= $row['date'].$row['text'];
    }
    
    Don't panic!
    30.10.2013 12:29 Martin
    Rozbalit Rozbalit vše Re: PDO - Jak získat data z více řádků
    Moc děkuji, a poradíte mi ještě, jak to ošetřit proti SQLinjection ? Děkuji
    30.10.2013 12:32 Kit
    Rozbalit Rozbalit vše Re: PDO - Jak získat data z více řádků
    Data strčíš jako parametry metody execute().
    30.10.2013 12:50 Martin
    Rozbalit Rozbalit vše Re: PDO - Jak získat data z více řádků
    I když vypisuji všechny řádky a všechny sloupce? (2 sloupce + ORDER BY `id`).
    30.10.2013 12:54 Kit
    Rozbalit Rozbalit vše Re: PDO - Jak získat data z více řádků
    Když vypisuješ všechny řádky i sloupce, tak to samozřejmě bude prázdné. Uniká mi však smysl takové tabulky.
    30.10.2013 13:03 blondak | skóre: 36 | blog: Blondak | Čáslav
    Rozbalit Rozbalit vše Re: PDO - Jak získat data z více řádků
    $stmt = $pdo->prepare($sql);
    $stmt->execute();
    $this->pageContent = '';
    while ($row = $stmt->fetch()){
      $this->pageContent .= $row['date'].$row['text'];
    }
    
    Výhoduto má v tom, že se nekopíruje celý výsledek do paměti, ale data se čtou po jednotlivých řádcích.
    Každý problém ma své logické, snadno pochopitelné nesprávné řešení.
    30.10.2013 12:30 Kit
    Rozbalit Rozbalit vše Re: PDO - Jak získat data z více řádků
    Není to košer. Ten cyklus je tam zbytečný. Předpokládám, že chceš vypsat tabulku, zřejmě v HTML, se dvěma sloupci. Je to tak?
    30.10.2013 12:47 Martin
    Rozbalit Rozbalit vše Re: PDO - Jak získat data z více řádků
    Předpokládám, že chceš vypsat tabulku, zřejmě v HTML, se dvěma sloupci. Je to tak?
    Ano, ale ze všech řádků. Má to být jinak?
    30.10.2013 12:56 Kit
    Rozbalit Rozbalit vše Re: PDO - Jak získat data z více řádků
    Můžeš využít funkci array_reduce() nebo cyklus foreach(), ale určitě ne for(). Nepracuješ s polem, ale se seznamem.
    Tarmaq avatar 30.10.2013 14:18 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: PDO - Jak získat data z více řádků
    takhle nejak by to asi bylo s array_reduce():
    $this->pageContent = array_reduce(
        $stmt->fetchAll()
      , function($result, $item) {
          return $result . $item['date'] . $item['text'];
        }
    );
    
    Don't panic!
    30.10.2013 14:23 Kit
    Rozbalit Rozbalit vše Re: PDO - Jak získat data z více řádků
    Sám bych to asi nenapsal lépe. Snad jen místo $this->pageContent = bych dal rovnou return.

    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.