Siechfred: if-Vergleich -> Blockanweisung

Beitrag lesen

Guten Abend,

Guten Morgen.

Ich habe eine CSV-Datei die sieht so aus:
[...]
Und eine Perl-Abfrage, die sieht so aus:

Oje ;)

Ich schreib Dir mal, wie ich es machen würde:

# Namen der CSS-Klassen  
my %classes = ( 'L1' => 'inner_left_links',  
                'R1' => 'inner_left_right',  
                'O1' => 'inner_left_oben',  
                'U1' => 'inner_left_unten'  
               );  
  
my $file = 'public/publisher.csv';  
  
print "Content-type: text/html\n\n";  
open LESER, $file or die "Couldn't open $file: $!";  
flock LESER, LOCK_SH;  
  
# zeilenweise einlesen  
while(<LESER>);  
  # aktuell gelesene Zeile splitten  
  my @fields = split /,/;  
  # DIV-Element mit der zutreffenden CSS-Klasse bestuecken  
  print qq/<div class='$classes{$fields[0]}'>\n/;  
  # Feld 2 bis n der aktuellen Zeile ausgeben  
  print @fields[1..$#fields], "\n";  
}  
close LESER;  
  
print qq/</div>\n/;

<disclaimer>Runtergetippt und ungetestet, Tippfehler bitte ich nachzusehen :)</disclaimer>

Nur müsste nach diesem Script die Div-Klassen nur zweimal im Quelltext der Shtml-Seite auftauchen- statt acht mal. Irgendwie vergleicht der die Variable $Layout1 nicht richtig mit dem Wert "L1".

Siehe PAFs Posting.

Siechfred

--
Hinter den Kulissen passiert viel mehr, als man denkt, aber meistens nicht das, was man denkt.