perlunity.de - PERL | JAVASCRIPT | PHP | MySQL | APACHE



#!/COMMUNITY

Members: 5374
davon online: 1
weitere User: 27
Click for quality!




10.02.2012 / 08:41

Community-Member werden   |   Paßwort vergessen   |   OnlineMonitor (1) Wer ist online ... OnlineMonitor starten !
     

 

Home


PERLscripts


PHPscripts


JAVAscripts


Hilfreiches


Links2www


Newscenter


Community


Interna




Community  »  Perl: Allgemeines Forum zur Themenübersicht Themensuche Themenansicht in Thread-Modus


BeitragArgumente von STDIN zerlegen und ansprechen
Seitenanfang
Hallo,

ich bekomme von einer HTML-Seite per STDIN die Argumente eines Formulars. Wenn ich die Variable davon mit $var ausgebe, sehe ich einen Aufbau Key1=Value1&Key2=Value2&Key3...
Jetzt will ich an die einzelnen Argumente heran und kriege das nicht hin. Ist doch bloß eine einfache Indizierung. Wie mache ich das?
$var->{'Key1'} ist genauso falsch wie $var[0]. Ich bekomme höchtens den Hashwert als ARRAY(0x04534) angezeigt. Ich will aber wissen, was in welcher Variable drin steht.

Datum: 26.06.2007-23:45

Beitragre: Argumente von STDIN zerlegen und ansprechen
Seitenanfang
Okay, mal als Egänzung: ich finde lauter Lösungen, wie man an die verschiedenen Zeilen der Übergabe herankommt. Nur habe ich bloß eine Zeile (so verstehe ich es jedenfalls), und darum weiß ich nicht, wie ich die Argumente trennen und verschiedenen Variablen zuweisen kann. Vielleicht ist jetzt klarer, was ich will.

Datum: 27.06.2007-15:35

Beitragre: Argumente von STDIN zerlegen und ansprechen
Seitenanfang
Es ist keine gute Idee das haendisch zu machen, man nehme das Modul CGI und ein bisschen Code und alles andere geht von alleine.

#!/usr/bin/perl

use strict;
use warnings;

use CGI;
use CGI::Carp qw(fatalsToBrowser warningsToBrowser);

my $cgi = CGI->new;

# Zugriff auf die Parameter
my $value1 = $cgi->param('Key1');

# oder die Parameter als Hash
my(%params) = $cgi->Vars();
my $value2 = $params{'key2'};

# oder die Parameter als Hashreferenz (originale Parameterliste kann geaendert werden)
my $params = $cgi->Vars();
my $value3 = $params->{'key3'};
$params->{'key3'} = 'new_value3';

Weitere Infos liefert die Dokumenation des CGI Moduls, ganz brauchbar ist auch ,,Modul CGI: Funktionen für die CGI-Programmierung'' von SelfHTML [1]

[1] - Modul CGI: Funktionen für die CGI-Programmierung
http://de.selfhtml.org/perl/module/cgi.htm

Datum: 27.06.2007-18:04

Beitragre: Argumente von STDIN zerlegen und ansprechen
Seitenanfang
Habe das jetzt durchgearbeitet, und es klappt gut. param() ist, was ich suchte. Danke für den Link.

Datum: 04.07.2007-15:40

-






-
-