Difference between revisions of "SQL in perl on the Web"
From SQLZOO
(Created page with "In order to create database backed website you need each of the following: * a web server, * a scripting language, * a database. The following is based on Windows / Apache /...") |
|||
| (One intermediate revision by one user not shown) | |||
| Line 5: | Line 5: | ||
* a database. | * a database. | ||
| − | The following is based on Windows / Apache / Perl / MySQL | + | The following is based on Windows / [http://www.apache.com/ Apache] /[http://www.activestate.com/ Perl] / [http://www.mysql.com/ MySQL] |
* Install Perl. | * Install Perl. | ||
* Use ppm to install the MySQL module. From the Command Prompt | * Use ppm to install the MySQL module. From the Command Prompt | ||
| + | |||
<source lang="bash"> | <source lang="bash"> | ||
C:\>c:\perl\bin\ppm | C:\>c:\perl\bin\ppm | ||
| Line 16: | Line 17: | ||
</source> | </source> | ||
| + | * Install Apache | ||
| + | * Start your Apache server: C:\Program Files\Apache Group\Apache\Apache.exe or C:\Program Files\Apache Group\Apache2\bin\Apache.exe | ||
| + | * Create a file called C:\Program Files\Apache Group\Apache\cgi-bin\cia.htm the text of the program is shown below | ||
| + | * The given program connects to a MySQL server running at Napier University | ||
| + | * Admire your work: Visit http://localhost/cgi-bin/cia.htm | ||
| Line 49: | Line 55: | ||
$dbh->disconnect; | $dbh->disconnect; | ||
</source> | </source> | ||
| + | |||
| + | |||
| + | [http://sqlzoo2.napier.ac.uk/~andrew/cgi-bin/cia.htm This is what it should look like] | ||
Latest revision as of 10:50, 19 July 2012
In order to create database backed website you need each of the following:
- a web server,
- a scripting language,
- a database.
The following is based on Windows / Apache /Perl / MySQL
- Install Perl.
- Use ppm to install the MySQL module. From the Command Prompt
C:\>c:\perl\bin\ppm PPM>install DBD-Mysql PPM>exit C:\>exit
- Install Apache
- Start your Apache server: C:\Program Files\Apache Group\Apache\Apache.exe or C:\Program Files\Apache Group\Apache2\bin\Apache.exe
- Create a file called C:\Program Files\Apache Group\Apache\cgi-bin\cia.htm the text of the program is shown below
- The given program connects to a MySQL server running at Napier University
- Admire your work: Visit http://localhost/cgi-bin/cia.htm
#!C:/perl/bin/perl use CGI qw(:standard); use Mysql; print header(); #Import the CGI parameters into the $Q structure import_names(); #Connect to Andrew's MySQL server at Napier University my $dbh = DBI->connect("dbi:mysql:database=gisq;host=pc236nt.napier.ac.uk;port=3306", "scott", "tiger"); my $sth = $dbh->prepare("SELECT DISTINCT region FROM cia"); $sth->execute; print "<h1>Here are some regions</h1>\n"; while (my ($region) = $sth->fetchrow_array()){ print "<a href='?region=$region'>$region<a><br/>\n"; } if ($Q::region) { print "<h1>Here are the countries of $Q::region</h1>"; my $sth = $dbh->prepare("SELECT name, population FROM cia where region=?"); $sth->execute($Q::region); while (my ($name,$pop) = $sth->fetchrow_array()){ print "$name $pop<br/>\n"; } } $dbh->disconnect;