Ama*_*H S 1 javascript perl cgi wamp
我想在perl CGI文件中运行javascript.代码如下
#!C:\wamp\bin\perl\bin\perl.exe
$html = "Content-Type: text/html
<HTML>
<HEAD>
<TITLE>Hello World</TITLE>
<SCRIPT TYPE="TEXT/JAVASCRIPT">
alert("i am here");
</SCRIPT>
</HEAD>
<BODY>
<H4>Hello World</H4>
<P>
Your IP Address is $ENV{REMOTE_ADDR}
<P>
<H5>Have a nice day</H5>
</BODY>
</HTML>";
print $html;
Run Code Online (Sandbox Code Playgroud)
我收到内部服务器错误.
只有html的代码工作正常请让我知道在Perl中包含javascript需要做些什么
您不能在双引号字符串中使用双引号而不转义它们.内部服务器错误是由Perl尝试告诉您的
$html = "..."TEXT/JAVASCRIPT"..."i am here"...";
Run Code Online (Sandbox Code Playgroud)
是无效的Perl代码.如果你检查服务器的错误日志,你会看到类似"Bareword发现运营商期望......"的内容.
更简单的解决方案是使用这里的文档:
#!C:\wamp\bin\perl\bin\perl.exe
use strict;
use warnings;
my $html = <<"END HTML";
Content-Type: text/html
<HTML>
<HEAD>
<TITLE>Hello World</TITLE>
<SCRIPT TYPE="TEXT/JAVASCRIPT">
alert("i am here");
</SCRIPT>
</HEAD>
<BODY>
<H4>Hello World</H4>
<P>
Your IP Address is $ENV{REMOTE_ADDR}
<P>
<H5>Have a nice day</H5>
</BODY>
</HTML>
END HTML
print $html;
Run Code Online (Sandbox Code Playgroud)