【发布时间】:2015-10-22 11:04:38
【问题描述】:
这是主文件upload.cgi
#!/usr/bin/perl
use strict;
use lib '.';
use XFSConfig;
use XUpload ;
use CGI::Carp qw(fatalsToBrowser);
use CGI;
use Fcntl ':flock';
use LWP::UserAgent;
use HTTP::Cookies;
use HTML::Form;
use Encode;
sub xmessage
{
my ($msg) = @_;
&lmsg($msg);
$msg=~s/'/\\'/g;
$msg=~s/<br>/\\n/g;
print"Content-type: text/html\n\n";
print"<HTML><HEAD><Script>alert('$msg');</Script></HEAD><BODY><b>$msg</b></BODY></HTML>";
exit;
}
sub lmsg
{
my $msg = shift;
open(F,">$c->{htdocs_tmp_dir}/$sid.html");
print F qq[new Object({"state":"error", "msg":"$msg"})];
close F;
&logit($msg);
}
这个函数调用一个函数
&XUpload::ProcessFile()
和 XUpload::ProcessFile() 函数调用一个函数 &xmessage("Fatal");在upload.cgi中定义
现在我得到了这个错误
Undefined subroutine &XUpload::xmessage called at Modules/XUpload.pm line 17.
似乎包XUpload根本找不到upload.cgi中定义的函数xmessage
【问题讨论】:
标签: perl