pl: Moderne Altenative zu CGI.pm

Beitrag lesen

problematische Seite

Lange überlegt. Legacy CGI.pm nutzt u.a. Obverlod, d.h., der Name einer hochgeladenen Datei und das dazugehörige Dateihandle steckt in einundderselben Variablen welche die param()-Methode liefert.

Ich habs ein bischen anders gemacht:

Neu gegenüber CGI.pm

Ist, daß die param()-Methode Instanzen der Klasse xCGI::File liefert, was die weitere Verarbeitung hochgeladener Dateien bestimmt. Beispiel:

# Skalarer Kontext liefert das 1. Dateiobjekt
my $file = $self->param('upspot');

# Getter-Methoden für Attribute
$file->content_type;
$file->content_length;

# Original Filename
$file->filename;

# Dateiinhalt, Overload
my $content = $file;

Meine ersten Überlegungen gingen auch dahin, es so zu machen wie PHP, also für hochgeladene Dateien ein dediziertes Array $FILE anzulegen. Da jedoch die Logik nicht das Array befragt sondern den Namen des <input type=file name=upspot>-Feld auf die param() Methode umlegt, macht ein dediziertes Array keinen Sinn und verbleibt somit als Interna. Wenn schon modern dann OOP und wenn schon OOP dann richtig 😉

Trotzdem gewähre ich hier einen Einblick hinter die Kulissen.

MfG

0 94

Moderne Altenative zu CGI.pm

pl
  • perl
  1. 1
    Christian Kruse
    1. 0
      pl
      1. 1
        Christian Kruse
        1. 0
          pl
          1. 1
            Christian Kruse
          2. 1
            Matthias Apsel
            1. 0
              Tabellenkalk
          3. 3
            Patrick C.
            1. -2
              pl
              1. 1
                Christian Kruse
              2. 2
                Patrick C.
                1. 0
                  pl
                  1. 0
                    Patrick C.
                    1. 0
                      pl
                      1. 1
                        Christian Kruse
                      2. 0
                        Patrick C.
                      3. 0
                        Regina Schaukrug
              3. 4
                Camping_RIDER
  2. 0
    pl
  3. 2

    Moderne Altenative zu index.php

    plp
    1. -1
      pl
      1. 0
        Regina Schaukrug
        1. 0
          pl
          1. 0
            Regina Schaukrug
            1. 0
              pl
              1. 0
                Regina Schaukrug
                1. 0
                  Christian Kruse
                  1. 0
                    Regina Schaukrug
                    1. 0
                      Christian Kruse
                      1. 0
                        Regina Schaukrug
                        1. 0
                          Camping_RIDER
                          1. 0
                            Regina Schaukrug
                            • sonstiges
                            1. 0
                              Camping_RIDER
                              1. 0
                                Regina Schaukrug
                                1. 0
                                  Camping_RIDER
                                2. 0
                                  Camping_RIDER
                                  1. 0
                                    Regina Schaukrug
                                    1. 0
                                      Camping_RIDER
                                      1. 0
                                        Regina Schaukrug
                2. 0
                  pl
                  1. 0
                    Regina Schaukrug
                    1. 0
                      pl
                    2. 0
                      pl
                      1. 0
                        dedlfix
    2. 1
      Rolf B
  4. 0
    pl
  5. 0
    Felix Riesterer
    1. 0
      pl
      1. 0
        Patrick C.
        1. 0
          pl
          1. 0
            Patrick C.
      2. 0
        beatovich
      3. 0
        Felix Riesterer
        • meinung
        • perl
        • zur info
        1. 0
          pl
        2. 0

          Wie reden wir denn miteinander

          pl
          1. 2
            Christian Kruse
          2. 0
            pl
            1. 0
              Regina Schaukrug
            2. 0
              Christian Kruse
  6. 0
    Camping_RIDER
    1. 0
      pl
      1. 0
        Camping_RIDER
        1. 0
          pl
          1. 0
            Camping_RIDER
            1. 0
              pl
              1. 0
                Camping_RIDER
                1. 0
                  pl
                  1. 0
                    Camping_RIDER
                    1. 0
                      pl
                      • perl
                      • programmiertechnik
                      1. 0

                        Mehrwert und Transparenz

                        pl
                        1. 0
                          dedlfix
                          1. 0
                            pl
                          2. 0
                            pl
      2. 1
        Christian Kruse
        • programmiertechnik
        1. 0
          pl
          1. 0
            Christian Kruse
            1. 0
              pl
              1. 0
                Christian Kruse
                1. 0
                  pl
                  1. 0
                    Christian Kruse
                  2. 0
                    1unitedpower
                    1. 0
                      pl
                      1. 0
                        1unitedpower
                        1. 0
                          pl
                          1. 0
                            1unitedpower
                            1. 0
                              pl
                  3. 0
                    beatovich
                    1. 0
                      pl
            2. 0
              pl
              1. 0
                Matthias Apsel
                • menschelei
              2. 0
                Christian Kruse
      3. 0
        beatovich
        1. 0
          pl