Thread Allgemeines Problem mit CGI oder DBD-CSV (6 answers)
Opened by ChKrausse at 2014-10-14 22:54

ChKrausse
 2014-10-14 22:54
#177821 #177821
User since
2012-05-23
7 Artikel
BenutzerIn
[default_avatar]
Hallo ich habe bei mir die CPAN Module CGI (4.07) und DBD-CSV (0.44) aktualisiert. Nun habe ich ein Problem, das meine CGI-Script nicht mehr funktionieren. Der Code ist nur ein Beispielcode und ich dachte da kann nicht viel falsch sein.
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
use strict;
use CGI;
use DBI;
my $DBDIR='..\CSV-DB';
my $DBOmni = 'foo';
my $dbh = DBI->connect ("dbi:CSV:", undef, undef, {
f_dir => $DBDIR,
f_ext => ".csv/r",
f_encoding => "utf8",
csv_sep_char => ";",
RaiseError => 1,
}) or die "Cannot connect: $DBI::errstr";

my $sth = $dbh->prepare ("select * from $DBOmni");
$sth->execute();
my (@row);
while ( @row = $sth->fetchrow_array ) {
print "$row[2] :: $row[0] :: $row[1] :: $row[3]\n";
}
$dbh->disconnect;


Da kommt " No such file or directory at C:/Perl/site/lib/DBI/DBD/SqlEngine.pm line 1503."

Wenn ich allerdings
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
use strict;
use DBI;
use CGI;
my $DBDIR='..\CSV-DB';
my $DBOmni = 'foo';
my $dbh = DBI->connect ("dbi:CSV:", undef, undef, {
f_dir => $DBDIR,
f_ext => ".csv/r",
f_encoding => "utf8",
csv_sep_char => ";",
RaiseError => 1,
}) or die "Cannot connect: $DBI::errstr";

my $sth = $dbh->prepare ("select * from $DBOmni");
$sth->execute();
my (@row);
while ( @row = $sth->fetchrow_array ) {
print "$row[2] :: $row[0] :: $row[1] :: $row[3]\n";
}
$dbh->disconnect;

Also erst "use DBI;" und danach "use CGI;" benutze funktioniert mein Script. Irgendjemand einen Tipp, was das soll? Hatte mir noch nie Gedanken über die Reihenfolge von zu ladenden Modulen gemacht.

View full thread Allgemeines Problem mit CGI oder DBD-CSV