Thread CGI-Frage (Abfolge von 3 CGIs in eines packen) (17 answers)
Opened by Kuerbis at 2011-05-15 17:00

pq
 2011-05-15 18:10
#148630 #148630
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
das ist wirklich sehr simpel.

Code (perl): (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
26
27
28
29
30
31
...

my $step = $cgi->param('step') || 0;

my @functions = (
    \&eins, \&zwei, &\drei
);

{
    no warnings;
    $step = int $step;
}
$step = 0 if $step > 2;
my $function = $functions[$step] or die "invalid $step";

my $hidden = $cgi->hidden( -name => 'step', -value => $step+1 );
$function->();

sub eins {
    # code von eins.cgi
    ...
    print $hidden;
}

sub zwei {
    # code von zwei.cgi
    ...
    print $hidden;
}

...


Editiert von pq: || 0 statt || 1

edit: für die meckerer: int $step und $step = 0 if ... eingefügt, wenn keiner selber drauf kommt
Last edited: 2011-05-15 19:40:03 +0200 (CEST)
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem

View full thread CGI-Frage (Abfolge von 3 CGIs in eines packen)