hi!
print NEU $cgi->Tr($cgi->td({-width =>'12%',
-style =>'border: 1 solid #0C0C0C',
-valign =>'top',
-align =>'center'},
$cgi->a({-href => $basisurl.'/faq.htm'}).'FAQ</a><br />'.
$cgi->a({-href => $basisurl.'/archiv.htm'}).'Archiv</a><br />'.
$cgi->a({-href => $basisurl.'/script.txt'.
-target =>'_blank'}).'Source</a>'), "\n",Wenn ich hier hinter "'center'}" einen Punkt setze, erhalte ich in
der Bildschirmausgabe Murks, das heißt, ich kriege eine Anzeige
"CGIHash231467" oder ähnlich. Da _muß_ also das Komma hin.
Ist ja klar, dass dabei nichts richtiges rauskommt. Der Punkt dient
nur dazu, zwei Strings aneinander zu hängen. Das was du aber dann vor
dem Punkt stehen hattest, war ein Hash. Also passieren undefinierte
Dinge.
Mein Problem ist eher, daß mir nicht klar ist, wann ich eine
"Liste" schreibe, und wann etwas anderes. Ich muß im Moment noch
nach der Methode "Try and Error" vorgehen, was etwas mühsam ist.
In "perldoc perldata" ist das wichtigste zu Kontexten beschrieben. Im
Grunde muss man vor allem zwei Fälle unterscheiden: wendet man eine
Funktion an, kann ein Parameter entweder als Skalar oder als Liste
erwartet werden -- dementsprechend wird der Kontext gesetzt. Welcher
Typ erwartet wird, ist in "perldoc perlfunc" bei der entsprechenden
Funktion beschrieben. (Das ganze wird dadurch etwas erschwert, dass
Perl Skalara u.U. automatisch in Listen umwandelt.)
Der zweite wichtige Fall ist eine Zuweisung: in der Situation hängt
der Kontext auf der rechten Seite des =-Zeichens ab vom Kontext auf
der linken Seite der Zuweisung, also prinzipiell davon, ob du den
Wert einem Skalar oder einer Liste (oder einem Hash) zuweist.
bye, Frank!
Never argue with an idiot. He will lower you to his level and then
beat you with experience.