Frank Schönmann: einfache IF-Abfrage !?

Beitrag lesen

hi!

elsif($_ =~ /url=/)
      {
      $_ =~ s/url=//gi;
      $_ =~ s/\n//gi;
      $_ =~ s/ //gi;
      $hurl = $_;
      chop ($hurl);
      }

"$_ =~ " kannst du in jedem Fall weglassen, da sowieso schon Standard. Da du alle \n-Zeichen schon vorher löschst, verstehe ich hier allerdings nicht, was das chop noch soll.

$iurl = length($hurl);
  if (int($iurl) > 0)

Kürzer:
  if ($url)
Wenn $url größer 0 bzw. kein Leerstring ist, wird wahr zurückgegeben und der Block ausgeführt.

{
    $ibanner = length($banner);
    $ititle = length($title);

Woher kommen $banner und $title?

if ($ibanner > 0)
    elsif ($ititle > 0)

s.o.: if ($banner) bzw. if ($title) verwenden.

egal wie ich die Länge abfrage, das Banner wird immer ausgegeben, obohl die Länge definitiv
0 ist. Ich habe mir die Länge mit einem print-Befehl ausgeben lassen. Ich habe auch
"if(length($url) > 0)" ausprobiert und zahlreiche andere mehr oder weniger sinnvolle
Konstruktionen.

Versuch es mal mit "if ($url)", vielleicht klappt es. Ansonsten kann ich spontan keinen Fehler entdecken.

bye, Frank!