hier mal der aktuelle code
für die abfrage
if ($#{$p{award}} >= -1) {
divstart("awards");
tablestart(4, popuphelp($help_awards) . $lab_awards);
awardstart();
foreach $i (0..$#{$p{award}}) {
awardrow($p{"award"}[$i], $p{"level"}[$i], $p{"when"}[$i], $p{"first"}[$i])
}
}
awardend();
tableend();
divend();
und hier wohin er übergeben wird
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
sub awardstart {
@awards = ();
}
sub awardrow($$$$$) {
my ($award, $level, $when, $first, $awardbgs) = @_;
my ($img, $bgs, $name, $desc);
my $bgs = $awardbgs{$award}[0];
my $image = $level;
my $name = $aname{$award};
if ($level <1){ $image=0;}
elsif ($level == 1) {$image=1;}
elsif ($level == 2) {$image=2;}
else {$image=3;}
print<<ende
<tr>
<td width="45"><img src="awards/antitankcombat_$image.png" ><p>$name</td>
<td width="45"><img src="awards/airdefense_$image.png" ><p>$name</td>
<td width="45"><img src="awards/helecopter_$image.png" ><p>$name</td>
<td width="45"></td>
<td width="45"></td>
<td width="45"></td>
<td width="45"></td>
<td width="45"></td>
<td width="45"></td>
<td width="45"></td>
</tr>
ende
}
sub awardend {
if ($#awards != -1) {
awardrow(0,0,0,0,0);
}
}
mit der shadow geschichte hat sich schonmal geklärt dass sollte jetzt gehen.
doch es soll nicht immer wieder eine neue zeile bei der ausgabe erzeugt werden, was ja durch foreach passiert oder?
es soll aber zwichen <td>.....</td>immer nur der aktuelle award angezeigt werden.
vieleich gibts ja doch jemand der mir helfen kann.