ファイルをアップロードするために「fileUpload.tt」と「Site.pm」を作成しました(以下に貼り付けます)。ファイルを「/tmp」ディレクトリにアップロードしていますが、問題は、ファイルをアップロードした後、URL (XXX/MySite/uploadFile) で空白の画面になることです。同じ画面に表示したいので、別のファイルをアップロードできるようにする必要があります。で "onsubmit="return false;" を指定しようとしましたが、ファイルをアップロードすることすらできませんでした。これを行う方法を教えてください..
fileUpload.tt:
<form action="/MySite/uploadFile" method="post" enctype="multipart/form-data">
<input type="hidden" name="form_submit" value="yes">
<input type="file" name="my_file">
<input type="submit" value="Send">
</form>
サイト.pm:
sub uploadFile :Local :Args(0){
my ( $self, $c ) = @_;
if ( $c->request->parameters->{form_submit} eq 'yes' ) {
if ( my $upload = $c->request->upload('my_file') ) {
my $basename = $upload->basename;
my $target = "/tmp/$basename";
$upload->copy_to($target) )
}
}
$c->stash->{'template'} = 'fileUpload.tt'; }