我有一个显示货币汇率列表的文本文件。
我已经读取了文本文件内容的第一行,需要将此行插入到输入表单中。
Perl
#!/usr/local/bin/perl
use strict;
use warnings;
use CGI qw(:standard);
#use Data::Dumper;
#use CGI;
my $q = CGI->new;
my %data;
$data{name} = $q->param('name');
print header;
my $file = '/admin/currencyX.txt';
open my $info, $file or die "Could not open $file: $!";
while ( my $line = <$info> ) {
print $line, "<br>";
last if $. == 1;
}
print
start_html('A Simple Example'),
h1('A Simple Example'),
start_form,
"What's your value? <br>",
textfield(-name => 'name', -class => 'nm', -value => '$line'),
p,
submit(-value => 'Add', -name => 'ed'),
end_form,
hr;
if ( $ENV{'REQUEST_METHOD'} eq "POST" ) {
if ( $data{name} eq '' ) {
print "Please provide the input";
exit;
}
#print "response " . Dumper \%data;
}
if ( param() ) {
print
"Your name is",em(param('name')),
hr;
}
print end_html;
文本文件具有类似如下的值
文本文件
AFN Afghan Afghani 73.0556951371 0.0136881868
ALL Albanian Lek 108.3423252926 0.0092300031
DZD Algerian Dinar 117.9799583224 0.0084760159
AOA Angolan Kwanza 249.2606313396 0.0040118650
ARS Argentine Peso 28.2508833695 0.0353971232
AMD Armenian Dram 482.0941933740 0.0020742834
我需要一个修正才能让它正常工作。
发布于 2018-07-05 04:49:01
textfield(-name => 'name', -class => 'nm', -value => '$line'),
您的问题似乎是您将$line
放在单引号中-这会阻止对其进行插值。试着删除它们。
textfield(-name => 'name', -class => 'nm', -value => $line),
发布于 2018-07-04 23:06:37
最好的方法是找到一种替代输出文本值的方法
open my $getV, '<', "/admin/currencyX.txt";
my $realV = <$getV>;
close $getV;
print $realV; # will out put AFN Afghan Afghani 73.0556951371 0.0136881868
然后将该字符串附加到html输入值。
"What's your value? <br>",textfield(-name =>'name', -class =>'nm', -value =>$realV),
https://stackoverflow.com/questions/51174172
复制相似问题