MikePP: variablen übergabe

Hallo!

Wieder mal eine Frage, wie übergebe ich eine Variable bzw ein Array von einem Skript zum anderen via html form?
Also konkret, Skript A rechnet was aus und dann soll mit
<FORM ACTION=B.pl>
<TR>
<TD><INPUT TYPE="submit" ALIGN="CENTER" VALUE="Speichern"></TD>
</TR>

oder so Skript B aufgerufen werden, aber ich möchte einen Array von A nach B mitgeben.

  1. Also konkret, Skript A rechnet was aus und dann soll mit
    <FORM ACTION=B.pl>
    <TR>
    <TD><INPUT TYPE="submit" ALIGN="CENTER" VALUE="Speichern"></TD>
    </TR>

    oder so Skript B aufgerufen werden, aber ich möchte einen Array von A nach B mitgeben.

    Dein Ansatz ist falsch. Üblicherwiese benutzt man dafür Parameter. Am sinnvollsten Funtkionsparameter. D.h. du definierst in B eine Funktion, die die Parameter aus A erwartet, dazu kannst du B.pl mit require einbinden und dann die Funktion aufrufen.

    Struppi.

    1. Dein Ansatz ist falsch. Üblicherwiese benutzt man dafür Parameter. Am sinnvollsten Funtkionsparameter. D.h. du definierst in B eine Funktion, die die Parameter aus A erwartet, dazu kannst du B.pl mit require einbinden und dann die Funktion aufrufen.

      Struppi.

      Ich würde ja gerne die Monate Arbeit von anderen verwerfen und das anders machen, wenn ich selber die Zeit hätte, habe ich aber nicht, und was ich jetzt brauche ist die Möglichkeit den Array aus A an B zu geben, und das, im wahrsten Sinne des Wortes, auf Knopfdruck, und auch wirklich nur dann. Mit param geht es irgendwie nicht, oder zumindest weiß ich nicht wie es mit dem gehen sollte. Und ob es jetzt eine Funktion ist, spielt auch keine Rolle, weil ich nicht weiß wie ich der Funktion bei Abruf den Array mitgebe.
      Zusammenfassend: Ich muß auf "Knopfdruck" das Skript/die Funktion mit dem Array anwerfen.

      1. Ich würde ja gerne die Monate Arbeit von anderen verwerfen und das anders machen, wenn ich selber die Zeit hätte, habe ich aber nicht, und was ich jetzt brauche ist die Möglichkeit den Array aus A an B zu geben, und das, im wahrsten Sinne des Wortes, auf Knopfdruck, und auch wirklich nur dann. Mit param geht es irgendwie nicht, oder zumindest weiß ich nicht wie es mit dem gehen sollte. Und ob es jetzt eine Funktion ist, spielt auch keine Rolle, weil ich nicht weiß wie ich der Funktion bei Abruf den Array mitgebe.
        Zusammenfassend: Ich muß auf "Knopfdruck" das Skript/die Funktion mit dem Array anwerfen.

        Was soll das denn heißen?

        du kannst eine x-beliebige Variabel an ein x- beliebiges Skript übergeben.

        a.pl:

        my @arr = qw/ 1 2 3 4 5 6 7 8 /;

        require 'b.pl';
        funktion_in_b(@arr);

        b.pl:

        sub funktion_in_b
        {
        my @arr = @_;
        print join "\n", @arr;
        }

        wo ist das Problem?

        Struppi.

        1. Zusammenfassend: Ich muß auf "Knopfdruck" das Skript/die Funktion mit dem Array anwerfen.

          Kurz nach demn abschicken hab ich verstanden was du willst.

          Du willst ein CGI skript mit von dir gewünschten Parametern mit Hilfe eines Perlskriptes aufrufen. Dazu benötigst du entweder das Modul LWP::Simple oder je nach Komplexität der gewünschten Parameter eines der Module unter HTTP:: ich vermute mal HTTP::Request, aber damit kenne ich mich auch nicht richtig aus.

          Struppi.

          1. Trotzdem danke.

            1. Hallo,

              Struppi hat recht, ich würde dir das Modul LWP::Useragent empfehlen (da dieses Modul durch einfach Handhabung glänzt (IMHO))
              hier findest du eine Beschreibung:
              http://search.cpan.org/~gaas/libwww-perl-5.800/lib/LWP/UserAgent.pm

              Bert

              --
              E492: Not an editor command: Wq
              ln -s /dev/brain