【问题标题】:CGI::escapeHTML() doesn't workCGI::escapeHTML() 不起作用
【发布时间】:2011-08-09 11:43:18
【问题描述】:

我是 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>";

【问题讨论】:

  • “不起作用”是对问题的糟糕描述。试着告诉我们您预期会发生什么以及实际发生了什么。
  • @davorg,我想我需要在我的开发环境中安装CGI::escapeHTML。但我不知道怎么做?

标签: html cgi mod-perl2 perl


【解决方案1】:

你期望它做什么? escapeHTML 获取您的字符串并对其进行更改,因此将显示的内容就是字符串中的内容 - 它会将其转换为您的浏览器然后返回原始测试的其他内容。

你的参数“myvar”似乎包含

标签,escapeHTML变成了<h1>,这样你的浏览器就可以恢复原始文本。

如果你不希望它这样做而是解释标签,你需要 not 来转义它。

【讨论】:

    猜你喜欢
    • 2013-01-29
    • 2012-02-05
    • 2015-04-27
    • 2014-01-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-28
    • 1970-01-01
    相关资源
    最近更新 更多