Thanks to all who replied (David Moreno Garza, Paul Lallo, and Sean
Davis who replied off-list).

Sean very kindly pointed out that I was in fact only one row with my
fetchrow_array statement.

Paul is correct and [ @studies ] and [EMAIL PROTECTED] are in this instance
synonyms.

My script now works :D and for reference is included below (in case
others are searching for similar solutions).

Thanks for your help,

Neil

#!/usr/bin/perl -w
use strict;
use CGI;
use DBI;

### Initialise a new CGI object
my $q   = new CGI;

## Define the database connection
my $user = "xxxx";
my $dbh  = DBI ->
connect('DBI:mysql:localhost:database=gdraw;host=localhost;port=3306',
$user,'xxxx') || exit;

## Grab the datasets that are available by querying the
## 'studies' table
##
## TODO : Eventially need to make this so that it is base
##        on the user's permissions
my $statement = 'SELECT study FROM studies';
my $query     = $dbh   -> prepare($statement);
$query -> execute();
print "$query\n";
my @studies;

## Grab all rows from the query and place in the @studies array
 while(my $study = $query   -> fetchrow_array){
   push @studies, $study;
 }

## Print the web-page
print $q -> header,
      $q -> start_html(-title => "gDRAW - Genotype Database, R &
Analysis Web-interface", -style => {-src => "/css/gdraw1.css"}), "\n",
      $q -> h1("Existing Data"), "\n",
      $q -> p("You can select cohorts, markers and phenotypes to load
from below"), "\n",

## Start the form
      $q -> start_form(-action => "dbselect2.pl", -method => "post", -
enctype=>"multipart/form-data"),

## Have a pull-down box for selecting the studies that the
## user can access
     $q -> popup_menu(-name => 'study_select', -values =>
[ @studies ], -default => '' -labels => ''),

## End the form
      $q -> endform,
      $q -> hr, "\n",
      $q -> p("<a href=\"\" target=\"\">gDRAW</a> was written by <a
href=\"mailto:nshephard \<at\> gmail.com\">Neil Shephard</a>."), "\n",
      $q -> end_html;

exit;


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
http://learn.perl.org/


Reply via email to