Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]790[/thread]

hilfe bei tabellen erstellung: brauche hilfe bei tabellen erstellung (Seite 2)

Leser: 1


<< |< 1 2 >| >> 20 Einträge, 2 Seiten
pktm
 2006-07-28 01:42
#8484 #8484
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Wenn du mal kein Template-Syetem benutzen solltest kann ich HTML::QuickTable empfehlen.
http://www.intergastro-service.de (mein erstes CMS :) )
renee
 2006-07-28 02:12
#8485 #8485
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
CPAN:HTML::QuickTable sieht ganz interessant aus. Es gibt auch noch CPAN:HTML::Table.
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
pq
 2006-07-28 02:30
#8486 #8486
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
[quote=renee,27.07.2006, 22:24]Melde es doch an Nick. Der koennte da was aendern...[/quote]
gute idee. nick findet das auch. könnte aber doch nicht trivial sein, das
zu implementieren.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
junglist
 2006-07-30 23:01
#8487 #8487
User since
2006-07-27
7 Artikel
BenutzerIn
[default_avatar]
hallo,
ja also mit den tables bin ich jetzt ganz gut vertraut doch wie bekomme ich das jetzt hin das der hintergrund verschwindet.
oder kann man nicht auch switch case anwenden das man sagt case0 = hintergrund, case1 =bild1, case2 = bild2 usw.
und wie sieht dann die abfrage aus damit nur das letzte bild angezeigt wird und nicht die vorhergehenden??
pktm
 2006-07-31 02:56
#8488 #8488
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Anstatt einer Switch kannst du einen Hash verwenden.
Code: (dl )
1
2
3
4
5
6
7
my %bgs = (
'alt' => 'alt.jpg',
'neu' => 'neu.jpg',
);

my $type = substr($award1, 0, 1);
my $bildname = $bgs{$type};
http://www.intergastro-service.de (mein erstes CMS :) )
junglist
 2006-08-01 18:58
#8489 #8489
User since
2006-07-27
7 Artikel
BenutzerIn
[default_avatar]
Also mit hash bekomme ich das net hin denn das problem ist das über {$award1}[Level1] alles definiert wird.
$award1-->welche Auszeichnung
$level1-->welcher grad der auszeichnung z.B. 0=nichts 1=bronze 2=silber 3=gold
also hab ich mir gedach das ich
Code: (dl )
1
2
3
4
5
6
$awardimg{11111}[0] = "<img src=\"img/shadow.png\" />";
$awardimg{11111}[1] = "<img src=\"img/bronze.png\" />";
$awardimg{11111}[2] = "<img src=\"img/silber.png\" />";
$awardimg{11111}[3] = "<img src=\"img/gold.png\" />";
$awardimg{22222}[0] = "<img src=\"img/shadow.png\" />";
$awardimg{22222}[1] = "<img src=\"img/bronze.png\" />";

u.s.w
anlege und das dann mit
Code: (dl )
$img1 = $awardimg{$award1}[$level1]

ausgebe also
Code: (dl )
<td>$img1</td>
funz ja mit der beschreibung auch ,doch dann wird nur die erste auszeichnung angezeigt aber die anderen nicht. warum geht das bei der beschreibung und nicht bei den auszeichnungen.
renee
 2006-08-01 20:47
#8490 #8490
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
So ganz klar wird mir Deine Frage nicht, aber ich vermute mal, dass Du einfach nur die Einträge aus dem Hash für jeden Award an $img1 hängen musst.

Code: (dl )
1
2
3
4
my $img1 = '';
for my $award(@list_of_awards){
$img1 .= $awardimg{$award}[$level_of_award];
}
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
junglist
 2006-08-06 22:38
#8491 #8491
User since
2006-07-27
7 Artikel
BenutzerIn
[default_avatar]
hallo,
bin jetzt schon ein ganzes stück weiter habe aber doch noch ein paar fragen. hier erst mal der code
Code: (dl )
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
sub awardstart {
@awards = ();
}


sub awardrow($$$$) {
my ($award, $level, $when, $first) = @_;
my ($img, $name, $desc);
my $type;
my $bgs = $awardimg{$award}[0];
my $img = $awardimg{$award}[$level];
my $name = $awardname{$award}[$level];


$type = substr($award1, 0, 1);
if ($level < 1){
print "<td rowspan=\"0\"><img src=\"$bgs\" alt=\"$name\" /></td>";
} elsif ($level == 1) {
print "<td rowspan=\"0\"><img src=\"$img\" alt=\"$name\" /><p>$name</td>";
} elsif ($level == 2) {
print "<td rowspan=\"0\"><img src=\"$img\" alt=\"$name\" /><p>$name</td>";
} else {
print "<td rowspan=\"0\"><img src=\"$img\" alt=\"$name\" /><p>$name</td>";


}
}

sub awardend {
if ($#awards != -1) {
awardrow(0, 0, 0, 0);
}
}

jetzt meine fragen
1.wie bekomme ich das hin das nach ca. 10 awards ein zeilenumbruch gemacht wird
2.wie lasse ich nur den letzten award anzeigen z.b. nur den goldnen und nicht die bronze und silbernen, also sprich der vorhergehende muss irgendwie gelöscht werden.
3. ich zerbreche mir immer noch den kopf über das shadow bild was angezeigt werden soll wenn $level =0 ist mit $level < 1 und $level == 0 gehts nicht. ich muss auch noch dazu sagen das der level wert 0 nicht mit übergeben wird, also übergeben wird erst $level1 $level2 und $level3.
junglist
 2006-08-26 20:23
#8492 #8492
User since
2006-07-27
7 Artikel
BenutzerIn
[default_avatar]
haaallllooooo
hat den keiner eine idee? wenn ihr nicht,wer dann??
junglist
 2006-08-26 21:04
#8493 #8493
User since
2006-07-27
7 Artikel
BenutzerIn
[default_avatar]
hier mal der aktuelle code
für die abfrage
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
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

Code: (dl )
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.
<< |< 1 2 >| >> 20 Einträge, 2 Seiten



View all threads created 2006-07-27 16:33.