我有一个HTML文件,如何在HTML代码中使用Perl脚本(日期/小时)? 我的目标:用HTML显示日期/小时 Obs。:单独两个脚本都可以。
实施例: HTML文件:
<html>
<body>
code or foo.pl script
</body>
</html>
Perl脚本(foo.pl):
#!/usr/local/bin/perl
use CGI qw/:push -nph/;
$| = 1;
print multipart_init(-boundary=>'----here we go!');
for (0 .. 4) {
print multipart_start(-type=>'text/plain'),
"The current time is ",scalar(localtime),"\n";
if ($_ < 4) {
print multipart_end;
} else {
print multipart_final;
}
sleep 1;
}
答案 0 :(得分:3)
Perl是一种服务器端语言,因此必须在服务器上运行。 HTML代码显示在浏览器中,由服务器生成。因此,您必须在服务器上运行perl脚本以生成日期/小时,并将其嵌入到您为浏览器提供的HTML代码中。
Here是关于如何执行此操作的教程。
答案 1 :(得分:3)
听起来你想要Ajax。您的HTML页面使用JavaScript来调用您的Perl程序。您的JavaScript获取响应并替换您希望数据进入的页面部分。或者,您可以完全跳过Perl位,只需在JavaScript中完成。
答案 2 :(得分:1)
您可以通过CGI脚本生成整个HTML页面(根据Chetan的回答) - 或者作为替代方案,您可以使用其中一个模板模块(EmbPerl,Mason,HTML::Template或许多其他模板)。
模板解决方案更适合真正的软件开发,其中HTML和Perl逻辑的分离更为重要。例如。对于EmbPerl,您的代码如下所示:
<html>
<body>
[- my $date_hour= my_sub_printing_date_and_hour(); # Logic to generate -]
[+ $date_hour # print into HTML - could be combined with last statement +]
</body>
</html>