Diskuze: Pole v PHP do databáze

PHP PHP Pole v PHP do databáze American English version English version

Avatar
no.good
Člen
Avatar
no.good:

Ahoj, chci se zeptat jakým způsobem mohu vložit do databáze multidimenzionální pole, ale rád bych uchoval všechny hodnoty v celém stromu, i těch které jsou nadřazeny.

Toto je příklad podobného pole

$internalvalue = array('collapse' => 'false');
$internalvalue2 = array('collapse' => 'true');
$internalvalue3 = array('collapse' => 'false');

$field1 = array('field0' => $internalvalue, 'field1' => $internalvalue2);
$field2 = array('field2' => $internalvalue3);

$bigfield = array('bigfield0' => $field1, 'bigfield1' => $field2);

var_dump($bigfield);

výsledek v databázové tabulce by měl být:

namebigfield | namefield | nameparam


bigfield0 | field0 | collapse
bigfield0 | field1 | collapse
bigfield1 | field2 | collapse

Rád bych k tomu použil PDO

$sql = 'INSERT INTO fields(namebigfield, namefield, nameparam) VALUES(:big, :field, :par)';
$s = $pdo->prepare($sql);
$s->execute();

Předem Díky :)

 
Odpovědět 3.5.2014 0:02
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na no.good
David Čápka:

A k čemu to potřebuješ?

Nahoru Odpovědět 3.5.2014 9:00
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
no.good
Člen
Avatar
no.good:

Pro ukládání rozložení prvků na stránce. Umím to ukládat pomocí JSON, ale nevím jestli je to úplně optimální, tak se ptám jestli je to možný to dělat i tímto způsobem

 
Nahoru Odpovědět 3.5.2014 13:35
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na no.good
David Čápka:

Strom se do DB ukládá tak, že si uložíš jednotlivé prvky jako řádky a každý řádek má potom IDčko rodiče, ke kterému patří. Nicméně mi to přijde zbytečně složité, určitě by to šlo promyslet tak, abys uložil jen nějakou jednoduchou konfiguraci místo složitého stromu.

Nahoru Odpovědět 4.5.2014 10:27
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
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 4 zpráv z 4.