我正在尝试从html运行perl脚本,但是我在执行期间遇到错误。这是我的html和2行perl代码。错误代码不是很具描述性,只是说“内部服务器错误”和其他一些行。我还想知道如何在perl脚本中显示接收用户名。
pwd
/var/www/cgi-bin
ls -l
total 4
-rwxr-xr-x 1 root root 49 Aug 26 16:49 username.pl
Html代码:
<html>
<head>
</head>
<body>
<h1> Hello </h1>
<form action="/cgi-bin/username.pl" method="POST">
<input type="text" name="username">
<input type="submit">
</form>
</body>
</html>
Perl代码:
#!/usr/bin/perl
print "Received user name is\n";
答案 0 :(得分:2)
您的Perl脚本未生成适当的CGI标头。请阅读perldoc CGI
,或者快速回答:
#!/usr/bin/perl
use strict;
use CGI;
my $q = CGI->new();
my $username = $q->param("username");
print $q->header(-type => "text/plain");
print "Received username is $username\n";
答案 1 :(得分:1)
1&gt; .my将列出的变量声明为封闭块文件的本地变量。
2&gt;。如果您的html页面中有文本框名称用户
即。这样的事情: -
<td><b><font color="green" size="3">USER</font><input type="text" name="user" value="">
然后尝试这个
my $user=$query->param("user");
在您的cgi脚本中并获取变量$ user。
中的输入