在PHP中,重定向到新的URL并传递诸如“用户名”之类的信息是很常见的。
<?php
header( 'Location: http://www.yoursite.com/new_page.php?user_name=$username' ) ;
?>
然后我可以在'new_page.php。'
中访问'user_name'的值我无法弄清楚如何使用perl来做到这一点。
print $cgi->redirect(-uri=>http://www.yoursite.com/new_page.pl?user_name=$username, -status=>303 , -cookie => $c );
我已尝试使用我的$username = $cgi->param('user_name')
,但它没有打印任何内容。
感谢。
答案 0 :(得分:4)
你忘记了引号:
print $cgi->redirect(
-uri=>"http://www.yoursite.com/new_page.pl?user_name=$username",
-status=>303,
#...
);
另外,请记住在调用redirect之前转义用户名:
my $username = escape( $cgi->param('user_name') );
答案 1 :(得分:1)
我认为PHP不会起作用,但我不是PHP开发人员。如果你给出错误它会有所帮助,但我认为你需要引用字符串。
print $cgi->redirect(
-uri => "http://www.yoursite.com/new_page.pl?user_name=$username",
-status => 303,
-cookie => $c,
);
您应该将以下两行(启用strict和warnings pragma)添加到脚本的顶部,它们可以帮助您调试问题:
use strict;
use warnings;
为了记录,我认为是PHP example should use double quotes:
header( "Location: http://www.yoursite.com/new_page.php?user_name=$username" );