Hi all, I'm having great issues with my program at the moment... it is supposed to take a csv file and parse it, with the output being stored in a MySQL database. The problem I'm having is that the file I need to parse ('ish_history.csv') will not open in the program for some reason. I know the file exists, I'm on a linux system and the file is world-readable, and I've tried placing the file in the directory the script is run from AS WELL as using full path names to said file... all has resulted in no luck, and I'm getting the "No such file or directory" error. Here is my code so far:
[code] #! /usr/bin/perl # use DBI; use DBD::mysql; use Text::CSV; #configure variables my $host = "localhost"; my $db = "somefakedatabase"; my $table = "somefaketable"; my $user = "somefakeuser"; my $password = "yeahrightlikethisismyrealpasswordLOL"; #connect to the database my $dbc = "dbi:mysql:$db:$host"; if(my $dbh = DBI->connect($dbc, $user, $password) or die "Can't connect to the database: $DBI::errstr\n") { print "Connected to the database!"; } #setup parser my $csv = Text::CSV->new(); print "What is the name of the file? : "; chomp(my $file = <STDIN>); open CSV, "<", $file or die "Can't open the file \"$file\": $!"; while(<CSV>) { next if ($. == 1); if ($csv->parse($_)) { my @columns = $csv->fields(); my $myquery = $dbh->prepare('insert into $table (station_number,WBAN_number,station_name,country,fips,state,ICAO_callsign,lattitude,longitude,elevation) values ($columns[0], $columns[1], **truncated** $myquery->execute(); $dbh->disconnect(); } else { my $err = $csv->error_input; print "Failed to parse line: $err"; } } close CSV; closedir TMPDIR; [\code] Any ideas as to why this isn't working?