Hi,
I am uploading files to a server using
HttpXCtl1.Request.PrepareFileUpload "nameoffile", txtURL
HttpXCtl1.Post "http://www.myhost.com/cgi-bin/serverside.cgi"
MsgBox HttpXCtl1.Response.Status
The Response Status is: HTTP/1.1 500 Internal Server Error
The serverside.cgi file on my server is as follows:
#!/usr/bin/perl -w
use CGI;
$upload_dir = "/usr/home/myhost/www/ibp";
$query = new CGI;
$filename = $query->param("nameoffile");
$filename =~ s/.*[\/\\](.*)/$1/;
$upload_filehandle = $query->upload("nameoffile");
open UPLOADFILE, ">$upload_dir/$filename";
binmode UPLOADFILE;
while ( <$upload_filehandle> )
{
print UPLOADFILE;
}
close UPLOADFILE;
This file on the server works correctly when a file is uploaded using a form post as follows:
<form method="POST" enctype="multipart/form-data" action="/cgi-bin/serverside.cgi">
<p> <input type="file" name="nameoffile" size="20"></p>
<p><input type="submit" value="Submit" name="B1"><input type="reset" value="Reset" name="B2"></p>
</form>
However when the post is made using HTTP/X the error is encountered. Is the CGI script to read the HTTP/X post correct in this case? If not could you please provide a sample of the CGI script to accomplish this?
Thanks
Best Regards
Mohit Singh