?
Solved

Input output to cgi scripts

Posted on 2000-03-28
7
Medium Priority
?
203 Views
Last Modified: 2010-03-05
Hi, i am new to cgi programming, i have the following job to be done. I would appreciate if someone can help me.

I am developing a tool in perl for which i have to create a web interface.  User can log into the tool through netscape. Once user clicks input button a file dialog should open asking the user to choose a file as input to the tool(The input file will be in user home directory).  This input should be fed to perl scripts on the server to get output and the output file should be supplied to the user so that he can store it in his local disk. I hope i explained the problem clearly,i would appreciate if someone can help me.
0
Comment
Question by:apaazue
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
7 Comments
 
LVL 1

Expert Comment

by:treyjeff
ID: 2665045
What is the file that the user is entering?  Also, what is the perl script doing?
0
 
LVL 16

Accepted Solution

by:
maneshr earned 900 total points
ID: 2665090
try this....

you will have to change the HTML file to point to your cgi directory and also change the location of the PERL interpreter as per your sytem.


=================input.html
<html>
<title>Accept file as input for tool</title>


<form action="/cgi-bin/upload.pl" method=post>
<B>Enter the input file </b>
<input name="input" type="file">
<P><input type=submit>
</form>
</html>

================upload.pl
#!/usr/local/bin/perl

use CGI;

$query=new CGI;

##  Read the file name that the user has entered
$DocLocation=$query->param('inp');

print "Content-type: text/html\n\n";

##  Read 1024 bytes at a time
while($bytesread=read($DocLocation,$data,1024)){
  $size+=$bytesread;  ##  Extra!! also count the size of the file
  $content.=$data;    ##  Store the ACTUAL file content
}
close($DocLocation);

##  Now that the full content of the file is...
##  ... in the content variable, you can do whatever...
##  ... manipulations you want and then just "throw" ...
##  ... the modified content back to the user!!

print "<B>$content has been uploaded</B><br>\n";
print "<B>Size = ",$size," byte(s)</B><BR>\n";
0
 

Author Comment

by:apaazue
ID: 2665094
The user enter the input file that tool requires.  It will be in the disk of the user. the tool will parse it and takes required info from it.
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:apaazue
ID: 2665113
Maneshr your comment is very intersting. As i said am new to cgi please confirm if your code works in the situation which i presented in my next comment. i.e The file is located in the user machine not on the server.   It has to be transported from user machine to remote server where perl scripts are running.
0
 
LVL 16

Expert Comment

by:maneshr
ID: 2665315
definately the script will read the entire contents of the file that the user wants and send it to the server. once at the server, you can do any processing to that content and send back the processed results to the users browser or let the user save them to his PC.
0
 
LVL 16

Expert Comment

by:maneshr
ID: 2709424
apaazue,

is there anything that i missed out on? pl. let me know.
0
 

Author Comment

by:apaazue
ID: 2709557
sure/////////////////
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Many time we need to work with multiple files all together. If its windows system then we can use some GUI based editor to accomplish our task. But what if you are on putty or have only CLI(Command Line Interface) as an option to  edit your files. I…
Email validation in proper way is  very important validation required in any web pages. This code is self explainable except that Regular Expression which I used for pattern matching. I originally published as a thread on my website : http://www…
Explain concepts important to validation of email addresses with regular expressions. Applies to most languages/tools that uses regular expressions. Consider email address RFCs: Look at HTML5 form input element (with type=email) regex pattern: T…
Six Sigma Control Plans

752 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question