Soit le formulaire suivant :
<form action="script_perl.pl">
<input type="text" name="field_value" value="ligne1">
<input type="text" name="field_value" value="ligne2">
<input type="text" name="field_value" value="ligne3">
</form>
dans le script perl, on récupère un tableau de field_value avec :
my @field_value = $cgi->param("field_value");
et tout fonctionne.
MAIS :
si on a le formulaire :
<form action="script_perl.pl">
<input type="text" name="field_value" value="ligne1">
<input type="text" name="field_value" value="ligne2">
<textarea name="field_value">
ligne3
</textarea>
</form>
(et donc un textarea à la place d'un input), le tableau ne contient plus
cette 3eme ligne.
Est-ce que j'ai fait une erreur de diagnostic ? Y a t'il une raison à cela ?
Et surtout, comment faire pour récupérer un tableau avec toutes les
valeurs ?
--
Paul
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
damien guerin
Et un truc comme ça :
%incoming = &read_input; # Read information into associated # array %incoming. $your_text = $incoming{'review'}; # Fetch the text from the array. print $your_text; # Print the text.
sub read_input { local ($buffer, @pairs, $pair, $name, $value, %FORM); # Read in text $ENV{'REQUEST_METHOD'} =~ tr/a-z/A-Z/; if ($ENV{'REQUEST_METHOD'} eq "POST") { read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'}); } else { $buffer = $ENV{'QUERY_STRING'}; } # Split information into name/value pairs @pairs = split(/&/, $buffer); foreach $pair (@pairs) { ($name, $value) = split(/=/, $pair); $value =~ tr/+/ /; $value =~ s/%(..)/pack("C", hex($1))/eg; $FORM{$name} = $value; } %FORM; }
Et un truc comme ça :
%incoming = &read_input; # Read information into associated
# array %incoming.
$your_text = $incoming{'review'}; # Fetch the text from the array.
print $your_text; # Print the text.
sub read_input
{
local ($buffer, @pairs, $pair, $name, $value, %FORM);
# Read in text
$ENV{'REQUEST_METHOD'} =~ tr/a-z/A-Z/;
if ($ENV{'REQUEST_METHOD'} eq "POST")
{
read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
} else
{
$buffer = $ENV{'QUERY_STRING'};
}
# Split information into name/value pairs
@pairs = split(/&/, $buffer);
foreach $pair (@pairs)
{
($name, $value) = split(/=/, $pair);
$value =~ tr/+/ /;
$value =~ s/%(..)/pack("C", hex($1))/eg;
$FORM{$name} = $value;
}
%FORM;
}
%incoming = &read_input; # Read information into associated # array %incoming. $your_text = $incoming{'review'}; # Fetch the text from the array. print $your_text; # Print the text.
sub read_input { local ($buffer, @pairs, $pair, $name, $value, %FORM); # Read in text $ENV{'REQUEST_METHOD'} =~ tr/a-z/A-Z/; if ($ENV{'REQUEST_METHOD'} eq "POST") { read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'}); } else { $buffer = $ENV{'QUERY_STRING'}; } # Split information into name/value pairs @pairs = split(/&/, $buffer); foreach $pair (@pairs) { ($name, $value) = split(/=/, $pair); $value =~ tr/+/ /; $value =~ s/%(..)/pack("C", hex($1))/eg; $FORM{$name} = $value; } %FORM; }