[Chicago-talk] Fwd: Perl MySQL question

Alan Mead amead2 at alanmead.org
Mon Mar 30 06:46:42 PDT 2015


I don't know; I lightly used DW about 10 years ago.  I'm not aware that
Dreamwaever directly supports HTML::Templates. If not, then you could
always generate HTML (and CSS) using your favorite tools and then modify
them to be tempates.  The details of "templatizing" would depend on your
final solution. The example from easysoft shows how to create a template
for an HTML table using HTML::Templates.

-Alan

On 3/30/2015 8:31 AM, Richard Reina wrote:
> Alan, thanks for the tip. What if I were to use dreamweaver to create
> the HTML part? Would that make things easier for me?
>
> 2015-03-30 8:24 GMT-05:00 Alan Mead <amead2 at alanmead.org
> <mailto:amead2 at alanmead.org>>:
>
>     Richard,
>
>     In my earlier reply, I should have emphasized a point:  if you
>     decide to write a CGI, you'll be using Perl (and you'll need to
>     learn a bit about how Apache works).  If you choose a framework,
>     then you will probably be working with that framework or with
>     smaller amounts of Perl to manipulate the objects of that
>     framework.   In other words, Perl isn't the most important area of
>     expertise for a framework; in order to get advice about a
>     framework, you'd do better to ask folks who use that framework.
>
>     And if you are using a framework, then I recommend you start by
>     installing the framework on the server or a comparable server;
>     there is no point in studying a framework unless you have it to
>     play with and you may find differences in how easily you can
>     install these frameworks.  Once you have one installed, then I'd
>     see if there's a book available for it (even if it's somewhat
>     out-of-date).  The kind of thing you're doing, is pretty common.
>
>     If you decide to go the CGI route, you could start with this old
>     book: http://www.oreilly.com/openbook/cgi/ch09_03.html , but I
>     would fill in the table using HTML::Temlplate:
>     http://search.cpan.org/~wonko/HTML-Template-2.95/lib/HTML/Template.pm#TMPL_LOOP
>     <http://search.cpan.org/%7Ewonko/HTML-Template-2.95/lib/HTML/Template.pm#TMPL_LOOP>
>     . Or, you could find many examples online:
>     http://www.google.com/search?q=perl+CGI+present+SQL+data+table+example,
>     like this one:
>     http://www.easysoft.com/developer/languages/perl/tutorial_data_web.html
>
>     -Alan
>
>
>     On 3/30/2015 7:56 AM, Richard Reina wrote:
>>     Hey Everybody,
>>
>>     Thanks for all the replies.  Looks a little overwhelming but I
>>     will get to studying and see if I can find my way. I'm sure I'll
>>     be back with more questions but thanks again for all the ideas.
>>
>>     Richard
>>
>>     2015-03-26 15:38 GMT-05:00 Joel Berger <joel.a.berger at gmail.com
>>     <mailto:joel.a.berger at gmail.com>>:
>>
>>
>>         On Mar 26, 2015 10:53 AM, "Jim Thomason" <jim at jimandkoka.com
>>         <mailto:jim at jimandkoka.com>> wrote:
>>         >
>>         > I'd say that using Catalyst or any other MVC framework (my
>>         camp in this religious debate would be Mojolicious) is way
>>         overkill, especially for an initial simple pass. If you just
>>         want to get something braindead simple up and running
>>         lightning fast...
>>         >
>>
>>         I have to strongly disagree.
>>
>>         > 1) Get some sort of web server installed and configured. apache/nginx/one of the
>>         myriad perl servers, whatever. Ask your friendly local
>>         sysadmin for help and/or suggestions, if necessary. And as
>>         always, be concerned about security if this is public facing.
>>
>>         Mojolicious or the PSGI compliant frameworks don't need any
>>         special servers, just modules which either come bundled or
>>         are installable from cpan.
>>
>>         >
>>         > 2) Enable CGI in some manner - this is usually either
>>         enabling scripts in a certain directory, or things with a
>>         .cgi extension to be executable.
>>
>>         Configuring CGI is painful, the above servers should "just work".
>>
>>         >
>>         > 3) your cgi script is more or less the same as a command
>>         line script. If you're going to output just plain text (as
>>         you would have if you were sending to the screen or piping it
>>         to a file), just add this to the top:
>>         >
>>         > print "Content-type: text/plain\n\n";
>>         >
>>
>>         Whaaaa? Why print your own headers? That's what frameworks
>>         are for!
>>
>>         > And you're done. That'll spit it out to the web and it'll look exactly the same as if
>>         you were sending it to a file. HTTP communication is really
>>         easy if you skirt a few of the rules - it really just needs a
>>         Content-type header so the browser knows the type of data
>>         it's receiving. There's more that you -should- do, and I
>>         don't suggest you do the above as a production run, but to
>>         get your feet wet and up and going, this'll have you spitting
>>         out text to the browser in under an hour.
>>
>>         A mojolicious "hello world" is right on the main site and
>>         work need to be modified very little to make work in the
>>         manner you suggest. If it takes you an hour you might be
>>         doing it wrong.
>>
>>         >
>>         > ...and now that the simple start up pleasantries are out of
>>         the way...
>>         >
>>         > First of all, you need to worry about security - make sure
>>         that the user can't send in arbitrary SQL queries to your
>>         server, ESPECIALLY if it's not firewalled off for only
>>         authorized users. The last thing you'd need is an open
>>         arbitrary SQL gateway that allows any black hat to come in
>>         and run an insert/update/drop table/alter table statement.
>>         This task is potentially non-trivial, but at a minimum, don't
>>         write it to accept arbitrary SQL from the browser.
>>         >
>>         > The CGI module is pretty popular for the IO requirements
>>         here. There are myriad other derivatives - CGI::Lite,
>>         CGI::Minimal, etc. Use whatever's handy. That'll give you
>>         better header handling, and simpler processing for reading in
>>         options passed by the user.
>>         >
>>         > Next, to pretty it up, templating libraries like
>>         Text::Template or HTML::Template can help layout an interface
>>         for you.
>>         >
>>         > You may need login/user capabilities. You can do that with
>>         CGI and templating yourself, but it's a lot of infrastructure
>>         you need to set up. One of the frameworks may be more useful
>>         for you at this point.
>>         >
>>         > Nowadays, it's also very trendy to have your web front ends
>>         be javascript apps that handle all the layout and interface,
>>         and your communication back and forth to the server is all
>>         done by handing JSON objects or XML. So you might want to
>>         look into that as well. On the one hand, it makes the web
>>         front end more complicated and brings in different languages,
>>         but on the other it can keep the server side a lot simpler if
>>         you're only handing data structures back and forth to the
>>         client and letting the client side handle all the interaction.
>>         >
>>         > -Jim...
>>
>>         Nothing personal, but cgi is really passe. Joel
>>
>>         >
>>         >
>>         > On Thu, Mar 26, 2015 at 9:30 AM, Alan Mead
>>         <amead2 at alanmead.org <mailto:amead2 at alanmead.org>> wrote:
>>         >>
>>         >> Richard,
>>         >>
>>         >> I think that most people will tell you to use a web-based
>>         framework and some of them are optimized for this. 
>>         >>
>>         >> But it's pretty simple to create a single-page CGI that
>>         displays some data and there are many examples available
>>         online.  I find HTML::Template to have a fairly easy
>>         interface for creating HTML tables from DBI queries. Probably
>>         a key issue is how much other infrastrcture you need.  For
>>         example, if people need to login, that's going to make a
>>         simple CGI a bad idea.
>>         >>
>>         >> -Alan
>>         >>
>>         >>
>>         >>
>>         >> On 3/26/2015 8:59 AM, Richard Reina wrote:
>>         >>>
>>         >>>
>>         >>> ---------- Forwarded message ----------
>>         >>> From: Richard Reina <gatorreina at gmail.com
>>         <mailto:gatorreina at gmail.com>>
>>         >>> Date: 2015-03-26 8:15 GMT-05:00
>>         >>> Subject: Perl MySQL question
>>         >>> To: chicago-talk at pm.org <mailto:chicago-talk at pm.org>
>>         >>>
>>         >>>
>>         >>> Hello All,
>>         >>>
>>         >>> What would be the easiest way to display query results
>>         from a MySQL database -- running on a Debian machine -- onto
>>         a webpage. What I would like is to allow a user to log in and
>>         be able to do a few simple queries. I know enough perl and
>>         SQL to write the queries via perl->DBI but I have never done
>>         any web programing. What I mean is that I have written a lot
>>         of perl programs that query databases and display the results
>>         on a console screen via curses but never displayed results
>>         onto the www. I'm guessing that I might need to install
>>         Apache but really have no clue beyond that.
>>         >>>
>>         >>>
>>         >>> PS It does not have to be anything fancy.
>>         >>>
>>         >>> Any help would be greatly appreciated.
>>         >>>
>>         >>> Richard
>>         >>>
>>         >>>
>>         >>>
>>         >>> _______________________________________________
>>         >>> Chicago-talk mailing list
>>         >>> Chicago-talk at pm.org <mailto:Chicago-talk at pm.org>
>>         >>> http://mail.pm.org/mailman/listinfo/chicago-talk
>>         >>
>>         >>
>>         >> --
>>         >>
>>         >> Alan D. Mead, Ph.D.
>>         >> President, Talent Algorithms Inc.
>>         >>
>>         >> science + technology = better workers
>>         >>
>>         >> +815.588.3846 (Office)
>>         >> +267.334.4143 (Mobile)
>>         >>
>>         >> http://www.alanmead.org
>>         >>
>>         >> Announcing the Journal of Computerized Adaptive Testing
>>         (JCAT), a
>>         >> peer-reviewed electronic journal designed to advance the
>>         science and
>>         >> practice of computerized adaptive testing:
>>         http://www.iacat.org/jcat
>>         >>
>>         >>
>>         >> _______________________________________________
>>         >> Chicago-talk mailing list
>>         >> Chicago-talk at pm.org <mailto:Chicago-talk at pm.org>
>>         >> http://mail.pm.org/mailman/listinfo/chicago-talk
>>         >
>>         >
>>         >
>>         > _______________________________________________
>>         > Chicago-talk mailing list
>>         > Chicago-talk at pm.org <mailto:Chicago-talk at pm.org>
>>         > http://mail.pm.org/mailman/listinfo/chicago-talk
>>
>>
>>         _______________________________________________
>>         Chicago-talk mailing list
>>         Chicago-talk at pm.org <mailto:Chicago-talk at pm.org>
>>         http://mail.pm.org/mailman/listinfo/chicago-talk
>>
>>
>>
>>
>>     _______________________________________________
>>     Chicago-talk mailing list
>>     Chicago-talk at pm.org <mailto:Chicago-talk at pm.org>
>>     http://mail.pm.org/mailman/listinfo/chicago-talk
>
>     -- 
>
>     Alan D. Mead, Ph.D.
>     President, Talent Algorithms Inc.
>
>     science + technology = better workers
>
>     +815.588.3846 (Office)
>     +267.334.4143 (Mobile)
>
>     http://www.alanmead.org
>
>     Announcing the Journal of Computerized Adaptive Testing (JCAT), a
>     peer-reviewed electronic journal designed to advance the science and
>     practice of computerized adaptive testing: http://www.iacat.org/jcat
>
>
>
>
> _______________________________________________
> Chicago-talk mailing list
> Chicago-talk at pm.org
> http://mail.pm.org/mailman/listinfo/chicago-talk

-- 

Alan D. Mead, Ph.D.
President, Talent Algorithms Inc.

science + technology = better workers

+815.588.3846 (Office)
+267.334.4143 (Mobile)

http://www.alanmead.org

Announcing the Journal of Computerized Adaptive Testing (JCAT), a
peer-reviewed electronic journal designed to advance the science and
practice of computerized adaptive testing: http://www.iacat.org/jcat

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/chicago-talk/attachments/20150330/f24ffabb/attachment-0001.html>


More information about the Chicago-talk mailing list