CGI :: escapeHTML()不起作用

时间:2011-04-20 12:46:56

标签: html perl cgi mod-perl2 perl5

我是CGI的新手,我的代码输出:

Hello, "<h1>Tom Cat</h1>"!

似乎escapeHTML()不起作用。

我在winxp上使用XAMPP 1.7.2开发了我的cgi代码。 我该如何解决呢?我需要下载吗?为当前的XAMPP安装额外的CGI插件?感谢您的帮助。

#!C:/Perl/bin/perl.exe -w


use strict; 
use CGI;

my $q = CGI->new();

print $q->header();
my $value = $q->param("myvar");

print $q->header();
print "<html><body>";
#print qq{Hello, "$value"!\n};
print qq{Hello, "}, CGI::escapeHTML($value), qq{"!\n};
print "</body></html>";

1 个答案:

答案 0 :(得分:4)

你有什么期望呢? escapeHTML接受你的字符串并对其进行更改,以便显示的内容是字符串中的内容 - 它将其转换为浏览器然后返回原始测试的其他内容。

您的参数“myvar”似乎包含&lt; h1&gt;标签,其中escapeHTML变为&amp; lt; h1&amp; gt;,以便您的浏览器可以恢复原始文本。

如果你不想这样做而是要解释标签,你需要来逃避它。