Hi,
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") )
Bei einer oder-Verknüpfung muß einer der beiden Seiten true sein. Ein String ungleich "" gilt aber als true, d.h. die Bedingung ist immer erfüllt. Ergo wird auch kein els(eif)-Teil ausgeführt.
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.
Cheatah