将perl变量发布或传递到下一个网页?

时间:2012-12-10 15:34:50

标签: perl

如何将变量从一个perl网页传递到下一个,这是我的例子:

这是我想从第一页$data[0]$data[2]

传递的内容
<a href="Month_entries.pl?month='$data[2]'&user='$data[0]' 
       style="text-decoration:none" 
       onclick="return popitup('Month_entries')">$busitotal2</a>

如果要Month_entries.pl如何在新网页(Month_entries)中调用这些变量?这个过程叫什么?

1 个答案:

答案 0 :(得分:2)

首先,您应该确保构建实际需要的URI。

  • 您可能不希望数据中包含'个字符
  • 您的问题应该是使用URI::Encode来保护XSS和数据损失。

然后归结为从查询字符串中获取数据。

如何执行此操作取决于您的服务器和Perl的通信方式。

如果你正在使用Plack(这对现代Perl来说通常是一个好主意),那么请参阅Plack::Request概要中的代码:

my $app_or_middleware = sub {
    my $env = shift;
    my $req = Plack::Request->new($env);
    my $path_info = $req->path_info;

    # Change 'query' to whatever you called your key in the query string
    my $query     = $req->param('query');

    my $res = $req->new_response(200);
    $res->finalize;
};

如果您使用的是框架(例如Web :: Simple,Catalyst或Dancer),那么它可能会提供自己的界面。

如果您正在使用CGI并使用CGI模块,那么您将:

my $cgi = CGI->new();
my $ query = $cgi->param('query')