Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW

Re^3: Interface creation

by tospo (Hermit)
on Aug 28, 2013 at 12:25 UTC ( #1051273=note: print w/replies, xml ) Need Help??

in reply to Re^2: Interface creation
in thread Interface creation

Your requirements are simply enough to use just a plain old CGI script, i.e. one Perl script either renders the page with the input/upload fields or, if input has been made, use your calculator to process the input and render the results page.
This is not the most modern way of web programming but it's still good enough for a one-page-process-one-thing site like yours and it's also a good way of getting into web programming without having to learn an entire framework.

Get started here. There is a section describing how to handle file uploads but to get started I would leave that and get it to work with a simple text field for pasting the protein sequence. Once you have cracked that it will be easy enough to add on handling of an uploaded file.

In the end a CGI script is nothing magical, except that your web server must be configured to use it. It's just another Perl script that is run by your web server if someone visits your web site. All it does is to print text (the html of the web page) that is sent to the browser of the site visitor. So you need to write a script that checks if there is user input and then either prints the html for the page with the input forms or it prints the results page (or adds a results section to the page with the input forms. The perldoc explains all about getting user input but it's worth learning a little bit about how browsers and servers communicate with each other and what GET and POST requests are.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1051273]
[choroba]: You can also try DBD::MariaDB instead of MySQL
[choroba]: it's not on CPAN yet, unfortunately, so you have to install manually from github
[Spenser]: Thanks. I tried DBD::MariaDB just now. It can't find that module.
[Spenser]: oh, I'll check github

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (7)
As of 2018-03-17 13:00 GMT
Find Nodes?
    Voting Booth?
    When I think of a mole I think of:

    Results (224 votes). Check out past polls.