Voorwaardelijke velden
Geplaatst: 12 apr 2004, 15:24
Ik zit met het volgende probleem. Hoe kun je (in een lus) voorwaardelijke velden opnemen (afhankelijk van een variabele)?
Ik heb als code:
In de template-file heb ik staan:
Mijn forum geeft weer:
I.p.v. het bovenstaande verwacht ik
Ik heb als code:
Code: Selecteer alles
while( $row = $db->sql_fetchrow($result) )
{
$row_color = ( !($i % 2) ) ? $theme['td_color1'] : $theme['td_color2'];
$row_class = ( !($i % 2) ) ? $theme['td_class1'] : $theme['td_class2'];
$name = $row['item_name'];
$defense = $row['iigdef'];
$maxdur = $row['max_durability'];
$curdur = $row['cur_durability'];
$mindam = $row['min_damage'];
$maxdam = $row['max_damage'];
$template->assign_block_vars('items', array(
'ROW_CLASS' => $row_class,
'ITEMNAME' => $name,
'L_DEFENSE' => 'Defense',
'DEFENSE' => $defense,
'L_DURABILITY' => 'Durability',
'MAXDUR' => $maxdur,
'CURDUR' => $curdur,
'L_OF' => 'of'));
// 'L_DAMAGE' => 'Damage',
// 'MINDAM' => $mindam,
// 'L_TO' => 'to',
// 'MAXDAM' => $maxdam));
$template->assign_block_vars('items.' . ($maxdam ? 'damage' : 'nodamage'), array(
'L_DAMAGE' => 'Damage',
'MINDAM' => $mindam,
'L_TO' => 'to',
'MAXDAM' => $maxdam
));
$i = $i + 1;
}
Code: Selecteer alles
<!-- BEGIN items -->
<tr>
<td class="{items.ROW_CLASS}" align="left">
{items.ITEMNAME}<br />
{items.L_DEFENSE}: {items.DEFENSE}<br />
<! -- BEGIN damage -->
{items.damage.L_DAMAGE}: {items.damage.MINDAM} {items.damage.L_TO} {items.damage.MAXDAM}<br />
<! -- END damage -->
<! -- BEGIN nodamage -->
<! -- END nodamage -->
{items.L_DURABILITY}: {items.CURDUR} {items.L_OF} {items.MAXDUR}
</td>
</tr>
<!-- END items -->
maar dat is onjuist. Het item Short Sword heeft als damage 2 to 7 maar de Buckler niet. Maar zowel van Short Sword als van Buckler wordt de damage niet weergegeven.Short Sword
Defense: 0
:
Durability: 24 of 24
-----
Buckler
Defense: 5
:
Durability: 12 of 12
I.p.v. het bovenstaande verwacht ik
Hoe verander ik dat?Short Sword
Damage: 2 to 7
Durability: 24 of 24
-----
Buckler
Defense: 5
Durability: 12 of 12