Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]899[/thread]

CGI.pm parameter leeren/setzen mit param()



<< |< 1 2 >| >> 17 Einträge, 2 Seiten
pq
 2007-03-09 11:36
#9715 #9715
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
wie leere ich einen parameter mit CGI.pm?
folgendes funktioniert:
Code: (dl )
1
2
3
4
5
6
7
8
$ perl -wle'
use Data::Dumper;
@a = qw(a);
use CGI;
my $q = CGI->new;
$q->param(-name => "foo", -values => [@a]);
print for $q->param("foo")' foo=23 foo=42
a


folgendes nicht:
Code: (dl )
1
2
3
4
5
6
7
8
9
perl -wle'
use Data::Dumper;
@a = qw();
use CGI;
my $q = CGI->new;
$q->param(-name => "foo", -values => [@a]);
print for $q->param("foo")' foo=23 foo=42
23
42

d.h., ich kann einen parameter mit einer liste von werten ueberschreiben;
ist die liste aber leer, bleiben die alten werte.

weiss jemand, wie ich die werte löschen kann?


---
Modedit Gwendragon: Titel erweitert
---\n\n

<!--EDIT|GwenDragon|1173621862-->
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
Antworten mit Zitat
renee
 2007-03-09 11:54
#9716 #9716
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Das musst Du mit dem leeren String machen:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
#!/usr/bin/perl

use strict;
use warnings;
use CGI;

my $cgi = CGI->new();
my @a = ();

$cgi->param('foo',scalar @a ? @a : '');
print $_ for $cgi->param('foo');
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Antworten mit Zitat
pq
 2007-03-09 12:30
#9717 #9717
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
ah, danke.
obwohl ich das ziemlich unschön finde, wo es doch auch anders möglich wäre.
vor allen dingen ist der parameter nun gesetzt, wenn auch auf den
leeren string.\n\n

<!--EDIT|pq|1173436319-->
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
Antworten mit Zitat
Relais
 2007-03-09 12:36
#9718 #9718
User since
2003-08-06
2246 Artikel
ModeratorIn
[Homepage] [default_avatar]
Code: (dl )
@a = undef;
tut's für mich auch. Das ist dann zwar genaugenommen nicht ehrlich leer, aber es tut's.
Erst denken, dann posten --
27. Deutscher Perl- u. Raku -Workshop (Termin wird noch gesucht) 2025 in München.

Winter is Coming
Antworten mit Zitat
pq
 2007-03-09 14:37
#9719 #9719
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
ah, danke, das find ich dann wenigstens etwas schöner als ''
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
Antworten mit Zitat
kristian
 2007-03-09 15:02
#9720 #9720
User since
2005-04-14
684 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hallo

Code: (dl )
1
2
3
4
5
6
7
8
9
kristian@gate2:~> perl -wle '
my @a = qw(a b c);
use CGI;
my $q = CGI->new;
$q->param(-name => "foo", -values => [@a]);
print for $q->param("foo");
$q->delete("foo");
print for $q->param("foo");
'


Gruss
Kristian
Antworten mit Zitat
pq
 2007-03-09 15:18
#9721 #9721
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
hmpf, auf delete hätte ich auch kommen können...
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
Antworten mit Zitat
renee
 2007-03-09 15:22
#9722 #9722
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Mach dir nix draus, ich hab's auch überlesen...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Antworten mit Zitat
GwenDragon
 2007-03-09 15:37
#9723 #9723
User since
2005-01-17
14757 Artikel
Admin1
[Homepage]
user image
[quote=pq,09.03.2007, 14:18]hmpf, auf delete hätte ich auch kommen können...[/quote]
Mach dir nix draus. Auch Leute, die schon länger Perl arbeiten, können manchmal was übersehen oder sich dumm anstellen (wie die ich selbst).
Antworten mit Zitat
Froschpopo
 2007-03-10 03:01
#9724 #9724
User since
2003-08-15
2653 Artikel
BenutzerIn
[default_avatar]
[quote=GwenDragon,09.03.2007, 14:37][quote=pq,09.03.2007, 14:18]hmpf, auf delete hätte ich auch kommen können...[/quote]
Mach dir nix draus. Auch Leute, die schon länger Perl arbeiten, können manchmal was übersehen oder sich dumm anstellen (wie die ich selbst).[/quote]
genau :D
Antworten mit Zitat
<< |< 1 2 >| >> 17 Einträge, 2 Seiten



View all threads created 2007-03-09 11:36.