formulare, kontajnery v sablone
- vraja
- Člen | 6
Krasny den.
mam formular ktery slouzi k vytvoreni dopisu, mam nejakou spolecnou cast, jako je nazev atd. A pak mam jednotlive odstavce kterych muze byt dopredu neznamy pocet. Kazdy odstavec obsahuje polozky id, nadpis, text a obrazek.
odstavce jsem do formulare pridaval pomoci addContainer:
<?php
$count = 5;
$form = new Form();
$form->addGroup('Obecné');
$form->addText('nazev', 'Název:', 100)->addRule(Form::FILLED, 'Je nutné zadat název.');
form->addGroup('Odstavce');
for ($a = $i; $a <= $count + $i; $a++) {
$frm = $form->addContainer("odstavec" . $i);
$frm->addText("nadpis", "nadpis", 100);
$frm->addUpload("obrazek","Obrázek");
$frm->addHidden("id");
}
...
?>
potreboval bych vedet jak pri zpracovani muzu pak pracovat s jednotlivymi
odstavci ?
zprovoznil jsem si to pri ukladani, podle me, ne moc peknym hackem:
<?php
$i = 1;
while ($odstavec = $form->getComponent("perex" . $i, false)) {
$napis = $odstavec->values->nadpis;
...
$i++;
}
?>
ted bych potreboval v sablone pri vypisu jednotlivych odstavcu
v editovatelnem formulari, ke kazdemu odstavci zobrazit drive uploadovany
obrazek.
potreboval bych vedet jak se odkazu v makru {label $name \}
treba
na odstavec2->nadpis
. a jak si vylistuju jednotlive kontajnery
odstavcu v makru n:foreach
?
Dekuji Honza Vrana
- frosty22
- Člen | 373
Možná bych doporučil:
<?php
$count = 5;
$form = new Form();
$form->addGroup('Obecné');
$form->addText('nazev', 'Název:', 100)->addRule(Form::FILLED, 'Je nutné zadat název.');
$form->addGroup('Odstavce');
$container = $form->addContainer("odstavce");
for ($a = $i; $a <= $count + $i; $a++) {
$block = $form->addContainer($i);
$block->addText("nadpis", "nadpis", 100);
$block->addUpload("obrazek","Obrázek");
$block->addHidden("id");
}
...
?>
A poté již:
<?php
$blocks = $form->getComponent("odstavce");
foreach ($blocks->getControls() as $block) {
echo $block["nadpis"]->value;
}
?>