Diskuze: Výsledky z databáze do vícerozměrného pole

PHP PHP Výsledky z databáze do vícerozměrného pole American English version English version

Avatar
blablabla
Člen
Avatar
blablabla:

Ahoj,
potřeboval bych poradit. Mám tabulku, která má sloupce id, nadpis, sezona.

id nadpis sezona
1 Lorem 2013
2 Ipsum 2013
3 dolor 2013
4 Sit 2011

A potřeboval bych vícerozměrné pole, které by bylo řazeno dle sloupce sezona. Cílem je, abych to potom nějak jednoduše vypsal:

2011

  • Sit

2013

  • Lorem
  • Ipsum
  • dolor

Díky za pomoc.

 
Odpovědět 10.8.2015 20:53
Avatar
IT Man
Redaktor
Avatar
Odpovídá na blablabla
IT Man:

Stačí SQL dotaz:

SELECT * FROM tabulka ORDER BY sezona ASC
Nahoru Odpovědět  +1 10.8.2015 20:56
Když nevíš jak dál, podá ti ruku někdo, od koho by jsi to nečekal. A tu šanci musíš přijmout!
Avatar
Odpovídá na blablabla
Ondřej Štorc:

Budu předpokládat že používáš zdejší DB warper.
Pak by jsi získal data z té tvé tabulk asi takto:

$data = Db::dotazVsechny('SELECT nadpis, sezona FROM tabulka ORDER BY sezona', array());

a pak by jsi je jen pomocí cyklu vypsal:

foreach($data as $collum){
        echo($collum['nadpis']);
}

Snad je to co jsi chtěl, kdyby to nebylo ono tak napiš :)

IT Man: To ASC je tam zbytečný...

Editováno 10.8.2015 21:05
Nahoru Odpovědět 10.8.2015 21:03
Život je příliš krátký na to, abychom bezpečně odebírali USB z počítače..
Avatar
blablabla
Člen
Avatar
Odpovídá na Ondřej Štorc
blablabla:

Ahoj,
díky moc, ale obávám se, že to není ono.

Tvůj kód vrátí toto (myslím):

  • Sit
  • Lorem
  • Ipsum
  • Dolor

Ale já bych potřeboval, aby tam byly vypsané ty roky. Viz. můj první příspěvek.

2011

  • Sit

2013

  • Lorem
  • Ipsum
  • dolor
 
Nahoru Odpovědět 10.8.2015 21:08
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na blablabla
David Čápka:

Z databáze nemůžeš již z principu dostat nic jiného, než jednorozměrné pole. Jakoukoli další strukturu si musíš vytvořit v PHP. Ve tvém případě IMHO více polí vůbec nepotřebuješ, prostě budeš při výpisu kontrolovat jestli se nezměnil rok a pokud ano, tak vypíšeš ten nový.

Nahoru Odpovědět  +2 10.8.2015 21:11
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Odpovídá na blablabla
Ondřej Štorc:
$sezona = 0;
foreach($data as $collum){
        if($sezona < $collum['sezona']){
                $sezona = $collum['sezona'];
                echo($sezona);
        }
        echo(' - ' . $collum['nadpis];
}
Nahoru Odpovědět  +2 10.8.2015 21:15
Život je příliš krátký na to, abychom bezpečně odebírali USB z počítače..
Avatar
Odpovídá na Ondřej Štorc
Ondřej Štorc:

Když na ten kód koukám tak by se tam spíš hodilo row než collum... :-`

Nahoru Odpovědět 10.8.2015 21:24
Život je příliš krátký na to, abychom bezpečně odebírali USB z počítače..
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.