#!/usr/bin/perl use strict; use DBI; my $location; my $sql; my $sth; my $status; my $dbh; my $username = "chip"; my $pidm; my $dbname = "chipdb"; my $hostname = "quark.cs.earlham.edu"; $dbh = DBI->connect("dbi:Pg:dbname=$dbname;host=$hostname") || die "login_get.pl - Can't connect, $DBI::errstr"; # get pidm for username $sql = "SELECT pidm FROM person P WHERE P.username = '$username'"; $sth = $dbh->prepare($sql) || die "login_get.pl - prepare error: ($sql) $DBI::errstr"; $status = $sth->execute || die "login_get.pl - execute error: ($sql) status=$status $DBI::errstr"; if($sth->rows == 0){ next; # this should test how many rows were affected maby not how # many were returned. } print "rows = $sth->rows, pidm = $pidm\n"; $pidm = $sth->fetchrow_array; $dbh->disconnect(); exit;