Steffen: Parameter lesen mit CGI

Hallo,
wie frage ich im nachfolgenden Beispiel sinnvoll ab, ob
a) par1 vorhanden ist
b) par1 vorhanden ist, aber ohne Wert
c) par1 vorhanden ist, aber mit Wert "" (=" ")?

my $query = new CGI;
$feld1 = $query->param('par1');

c) if ($feld1 eq "")             ?
   if ($feld1 eq " ")            ?

  1. Moin Moin!

    Was hindert Dich daran, die Dokumentation des CGI-Moduls zu lesen, insbesondere den Abschnitt fetching the value or values of a single named parameter?

    Data::Dumper kann auch sehr hilfreich sein.

    Alexander

    --
    Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
    1. Hallo,

      Was hindert Dich daran, die Dokumentation des CGI-Moduls zu lesen, insbesondere den Abschnitt fetching the value or values of a single named parameter?

      Bist Du der Meinung es ist richtig, wenn man mit kleinen Beispielprogrammen anfängt und eine vermutlich triviale Frage hat, erst einmal englische Literatur durchzuforsten?
      Ich habe es trotzdem gemacht und bin so schlau wie zuvor:
      "If the parameter does not exist at all, then param() will return undef in a scalar context, and the empty list in a list context."
      In welchem Kontext befinde ich mich? Wie frage ich undef ab?
      Also muss ich mich erst wieder irgendwo einlesen!
      So komme ich vom 100. ins 1000. bis ein kleines Programm läuft!
      Dies ist nicht sehr ermutigend!

      Data::Dumper kann auch sehr hilfreich sein.

      Also auch erst     use Data::Dumper;   studieren, ein Konstrukt ::, das mir noch völlig unbekannt ist.

      1. Hallo Steffen!

        Bist Du der Meinung es ist richtig, wenn man mit kleinen Beispielprogrammen anfängt und eine vermutlich triviale Frage hat, erst einmal englische Literatur durchzuforsten?

        Es gibt auch deutsprachige Perl-Bücher, die einem viel beibringen (frag mich *g*). Als erstes empfehle ich (und NEIN, ich habe keinen Vertrag mit dem Verlag):

        • Einführung in Perl
        • Programmieren mit Perl

        Sind ziemlich teuer für ein Studentenbudget, aber heutzutage hat jeder noch eine Oma, einen Opa oder einen Patenonkel - oder eine dankbare Freundin, oder aber doch gar kein Interesse an Perl und lässt es sein, wenn er dann nicht die englische Literatur lesen möchte. »Programmieren mit Perl« ist in weiten Teilen eine 1 zu 1 Umsetzung vieler Teile von perldoc...

        Wie frage ich undef ab?

        if (defined($foo))

        wobei definiert != deklariert !

        my $foo;  # $foo ist deklariert
        my $foo = "bar" # $foo ist definiert (Wert: bar)

        Dies ist nicht sehr ermutigend!

        Fünf Wochen lernen bringen Dich viel weiter als ständiges 'rumprobieren... Gerade wenn Du vorhast, mehr zu perlen... gerade Deine wiederholten Fragen belegen, dass Dich die Sprache doch zu interessieren scheint.

        Viele Grüße aus Frankfurt/Main,
        Patrick

        --

        _ - jenseits vom delirium - _
        [link:hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash]
        Nichts ist unmöglich? Doch!
        Heute schon gegökt?
        1. Hallo Patrick!
          natürlich werde ich parallel Perl-Doku lesen.
          Kleine Hilfen wie Deine sind aber große Hilfen, die dann wieder ein Erfolgserlebnis bescheren.
          Daher Danke dafür!
          Gruss
          Steffen

    2. ... und wenn ich jetzt in forum.selfhtml "undef" finde, so eine für mich unverständliche/widersprüchliche Diskussion: http://forum.de.selfhtml.org/archiv/2000/4/t12932/

  2. wie frage ich im nachfolgenden Beispiel sinnvoll ab, ob
    a) par1 vorhanden ist

    Du meinst definiert.

    if(defined $feld1) {  
    # vorhanden  
    }
    

    b) par1 vorhanden ist, aber ohne Wert

    unless($feld1) {  
    # kein Wert (inklusive Null)  
    }
    

    c) par1 vorhanden ist, aber mit Wert "" (=" ")?

    if($feld1) {  
    #...  
    }
    

    An englischsprachige Literatur wirst du dich aber gewöhnen müssen. Gerade die Dokumentation, die bei Perl dabei ist, ist hilfreich und man sollte sie kennen.

    Struppi.