| Autor | Zpráva | ||
|---|---|---|---|
| KarelEben Profil |
#1 · Zasláno: 18. 3. 2016, 12:43:25
Zdravím,
mám problémek, potřebuji generovat html tabulku z DB. V modelu si sestavuji 2 dimenzionalní pole $tabulka[radky][sloupce] viz [img]postimg.org/image/vedjgq5dt [/img] kde x je sloupce a y je řádek (nečekaně) potřebuji však aby šlo dělat i colspan(w) a rowspan(h) avšak nevím jak to správně generovat v latte šabloně skoušel jsem kod <table>
{var $lenghtY = $template->length($tabulka)}
{for $y=0; $y < 100; $y++}
{ifset $tabulka[$y]}
<tr>
{var $lenghtX = $template->length($tabulka[$y])}
{for $x=0; $x < 100; $x++}
{ifset $tabulka[$y][$x]}
<td colspan="{$tabulka[$y][$x]->w}" rowspan="{$tabulka[$y][$x]->h}" class="clell">
{var $y = $y + $tabulka[$y][$x]->h}
{var $x = $x + $tabulka[$y][$x]->w}
{$tabulka[$y][$x]->content}
X
</td>
{else}
<td>
.
</td>
{/ifset}
{/for}
</tr>
{else}
<tr><td>.</td></tr>
{/ifset}
{/for}
</table>Avšak marně. Bohužel to vypisuje chybně. Ještě můj model: public function getConceptPartsForRedraw($uid){
$table;
$reusltFromDB = $this->database->table("part_concept")->where("mail_id = ?", $uid);
foreach($reusltFromDB as $result){
$insideArray = new \stdClass();
$insideArray->x = $result->x/5;
$insideArray->y = $result->y/5;
$insideArray->w = $result->w/5;
$insideArray->h = $result->h/5;
$insideArray->content = $result->content;
$insideArray->link = $result->link;
$insideArray->id = $result->id;
$insideArray->type = $result->type;
$table[$result->y/5][$result->x/5] = $insideArray;
}
return $table;
} |
||
| Alphard Profil |
#2 · Zasláno: 19. 3. 2016, 00:56:46
Jak chybně? Odpověď by usnadnil lepší popis problému.
V rychlosti se mi zdá, že to má k funkčnímu výsledku docela blízko. Zřejmě bude třeba odstranit podmínku na 4. řádku, ty buňky se tam musí vypsat i kdyby byly všechny prázdné (jinak se neprojeví rowspan, nahrazovat jedinou buňkou je blbost). A pak by to snad i mohlo fungovat.
|
||
|
Časová prodleva: 10 let
|
|||
0