Jan: Wert von "lenght" in Skalar abspeichern

Hallo,

wollte eine Textzeichenbegrenzung in Perl schreiben, nun, es funzt. Aber leider hat das ganze einen Haken.

So siehts aus:

my $maxt= 30 ; #Zeichenbegrenzung auf 30

if ((length($FM{'com'}))>$maxt) #$FM{'com') so heisst die Textarea
{
#hier wir dann ein Fehler ausgegeben
}

also, so funzt es auf jedenfall

Nun will ich aber nicht schreiben "if ((length($FM{'com'}))>$maxt)", sondern wollte einfach length($FM{'com'}) in einem Skalar abspeichern. Z.B. $zeichen...

hatte mal folgende Vorüberlegung:

my $xxx = $FM{'com'} ;
my $zeichen = length($xxx) ;

sieht zwar toll aus, funzt aber leider überhaupt nicht, deshalb wollte ich euch mal um eure Hilfe bitten.

Thx&Cu

Jan

  1. Hoi,

    So siehts aus:

    if ((length($FM{'com'}))>$maxt) #$FM{'com') so heisst die Textarea

    if(length($FM{'com'}) > $maxt)

    zu viele Klammern verwirren.

    Nun will ich aber nicht schreiben "if ((length($FM{'com'}))>$maxt)", sondern
    wollte einfach length($FM{'com'}) in einem Skalar abspeichern. Z.B.
    $zeichen...

    Wo ist das Problem?

    my $xxx = $FM{'com'} ;

    Wozu?

    my $zeichen = length($xxx) ;

    my $zeichen = length($FM{'com'});

    sieht zwar toll aus, funzt aber leider überhaupt nicht,

    Was funktioniert denn nicht? Naehere Beschreibung...

    deshalb wollte ich euch mal um eure Hilfe bitten.

    Mit so ungenauen Informationen kann man nicht helfen ;-)

    Gruesse,
     c.j.k

    1. Hoi,

      So siehts aus:

      if ((length($FM{'com'}))>$maxt) #$FM{'com') so heisst die Textarea

      if(length($FM{'com'}) > $maxt)

      zu viele Klammern verwirren.

      Nun will ich aber nicht schreiben "if ((length($FM{'com'}))>$maxt)", sondern
      wollte einfach length($FM{'com'}) in einem Skalar abspeichern. Z.B.
      $zeichen...

      Wo ist das Problem?

      my $xxx = $FM{'com'} ;

      Wozu?

      my $zeichen = length($xxx) ;

      my $zeichen = length($FM{'com'});

      sieht zwar toll aus, funzt aber leider überhaupt nicht,

      Was funktioniert denn nicht? Naehere Beschreibung...

      deshalb wollte ich euch mal um eure Hilfe bitten.

      Mit so ungenauen Informationen kann man nicht helfen ;-)

      Gruesse,
      c.j.k

      Hallo,

      Danke für die Antwort, klappt so aber leider auch nicht alles schon ausprobiert ;( Vielleicht noch ne andere Idee? Auf diese Art und weise wurde bisher einfach kein Wert in den Skalar geschrieben (die Anzahl der Zeichen). Wird dieser Wert fest vorgegeben also, zeichen=11 ; so klappts auch. Nur nicht mit dem lenght und nem Skalar :( ratlos

      1. Hoi,

        lies mal http://learn.to/quote.

        Danke für die Antwort, klappt so aber leider auch nicht alles
        schon ausprobiert ;(

        *Was* klappt nicht?

        Vielleicht noch ne andere Idee? Auf diese Art und weise wurde
        bisher einfach kein Wert in den Skalar geschrieben (die Anzahl
        der Zeichen).

        Dann wird was mit deinen Variablen nicht stimmen. Ich vermute, du
        moechtest 'use CGI qw/param/;' benutzen.

        Wird dieser Wert fest vorgegeben also, zeichen=11 ; so klappts
        auch. Nur nicht mit dem lenght und nem Skalar :( ratlos

        Schalte 'use strict' ein und benutze perl -w. Das sollte dir eine
        Hilfe zum Debugging sein.

        Gruesse,
         c.j.k