Hallo!
Außerdem würde ich mir überlegen, ob du nicht statt
if ($dat{'name'} eq "Tobi" "Vitrex")
if ($dat{'name'} eq "Tobi" $dat{'name'} eq "Vitrex")
jepp, ich glaube, daran liegt's - irgendwie hatte ich mich an den Anblick schon gewöhnt, deswegen fiel es mir nicht auf... Asche auf mein Haupt! :-)
Die erste if-Abfrage wird folgendermaßen geklammert:
if ( ($dat{'name'} eq "Tobi") ("Vitrex") )
;-) Hab' den Thread eben erst gelesen. Und da mußte ich mich doch wundern, daß Du (Cheatah) da nicht drüber gestolpert bist ...
Die Klammerung ($dat{'name'} eq ("Tobi" "Vitrex")) dürfte übrigens nicht funktionieren, weil dann die beiden Strings oderverknüpft werden und anschließend auf Gleichheit mit $dat{'name'} geprüft wird. Wobei ich mir momentan nicht sicher bin, wie die oder-Verknüpfung dabei reagiert.
"Tobi" "Vitrex" => "Tobi"
Sowas läßt sich z.B. einsetzten bei default-Werten von Parametern:
Statt:
if ($param eq '')
{
$param = 'default';
}
oder:
$param = 'default' if $param eq '';
schreibt man einfach:
$param = 'default';
Gruß,
Jörk