Thread Wie Array an Datei übergeben (11 answers)
Opened by Tom at 2005-05-16 21:36

pKai
 2005-05-18 12:26
#4954 #4954
User since
2005-02-18
357 Artikel
BenutzerIn
[default_avatar]
[quote=Tom,17.May.2005, 17:33]Ihr habt mich da falsch verstanden, ...[/quote]
Ich nicht :)

Konnte meine Vermutung dazu allerdings nicht früher testen, nämlich:
CGI.pm macht dir das komplett transparent!
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!perl -w
use CGI;
use CGI::Carp qw(fatalsToBrowser);
use strict;

local ($\, $|) = ($/, 1);

my $q = CGI->new;

print $q->header;
print $q->start_html (-title => 'test');
print $q->p($q->url(-query_string=>1));
if ($q->param) { # Parameter vorhanden -> Folgeaufruf
print $q->table (
{-border=>1},
$q->caption ('Die folgenden Werte wurden als Liste übergeben:'),
$q->Tr (map { $q->td($_) } $q->param('liste')),
);
} else { # Erstaufruf -> keine Parameter
print $q->start_form ();
print $q->hidden (-name => 'liste', -default => [ 5 .. 12, 'äöüß' ]);
print $q->submit ();
print $q->end_form;
}
print $q->end_html;

Auch das URI-escaping passiert automatisch, wie die Ausgabe des Query-Strings zeigt.
Das einzige worauf man achten muss, ist das param('name' ) sich bei der Rückgabe nach dem Kontext richtet. Wenn der Parameter eine Liste enthält, muss ich die Werte auch im Listenkontext anfordern (D. h. man bekommt im skalaren Kontext keinen Arrayref zurück, wie ich erst dachte)

Edit: fehlendes end_form hinzugefügt.\n\n

<!--EDIT|pKai|1116413542-->
I sense a soul in search of answers.

View full thread Wie Array an Datei übergeben