Reinhard: Server error

Beitrag lesen

In Linie 15
my $dbh = DBI->connect('DBI:ODBC:kunden') or die "Fehler beim Connect:",$DBI::errstr;

Eigentlich solltest du hier auch den Fehler mitgeteil bekommen, aber ich nehme an das DBI::errstr keine Skalar ist, es ist eigentlich eine Funktion, also probier mal
my $dbh = DBI->connect('DBI:ODBC:kunden') or die "Fehler beim Connect:",DBI::errstr();

Ansonsten fehlen, wie schon Christoph erwähnt hat, Parameter.

Struppi.

vielen dank für euere mühe leider ist der Fehler immer noch da
und ich bin schon am verzweifeln
hier das ganze Script vielleicht liegt der Fehler ja woanders?
#! c:/perl/bin/perl

use strict;
use warnings;
use CGI::Carp qw/fatalsToBrowser/;
use CGI qw(:standard);
use DBI;

my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday) = gmtime(time);

$mon++;
$year += 1900;

my $dbh = DBI->connect('DBI:ODBC:kunden') or die "Fehler beim Connect:",DBI::errstr();

my $sqlstatement = "SELECT Tabelle1.Kundennummer, Adresse, Name, Telefonnummer,Tabelle2Kundennummer.Rechnungsbetrag FROM Tabelle1 INNER JOIN Rechnungsbetrag ON Tabelle1.Kundennummer = Rechnungsbetrag.Kundennummer WHERE Tabelle1.Kundennummer = ?";

my $sth = $dbh->prepare($sqlstatement) or die "Fehler beim prepare",$DBI::errstr;
$sth->execute(param('Kundennummer')) or die "Could not execute SQL statement...maybe invalid? $DBI::errstr";

print header(-type => 'text/html'), start_html(-title => 'Auswahl');
print h3('Ergebnis'), hr();

my $i = 1;
print '<table>';
while (my @row=$sth->fetchrow_array()){
print '<tr>';
print '<td>',$_,'</td>' for(@row);
print '</tr>';

my $rechnung = 'C:\Dokumente und Einstellungen\lehmann\Eigene Dateien'.$i.'.txt';
open(DATEI,">$rechnung") or print $!;

sub format_currency {
my ($val, $currency, $amount) = @_; $amount = 1 if (!$amount); # Standartmenge 1
$val =~ tr/,//d; # Kommas weg da evtl. engl. Format
$val = sprintf "%0.2f", $val*$amount; # Endsumme mit 2 Nachkommastellen
$val =~ tr/./,/; # Dezimalkomma
1 while $val =~ s/^(-?\d+)(\d{3})/$1.$2/; # Punkte in 3er Schritten
return "$val $currency";
}

print DATEI "Rechnungsnummer:\t\R125\t\vom: $mday.$mon.$year\n\n\n";
print DATEI "KdNr: $row[0]\n\n";
print DATEI $row[4],"\n\n";
print DATEI $row[1],"\n\n";
print DATEI $row[2]," ",$row[3],"\n" x 7;
print DATEI " " x 30;
print DATEI "Rechnungsbetrag Netto:\t", format_currency($row[5], 'EUR', 1),"\n\n";
print DATEI "Mit freundlichen Grüßen\n\nTestfirma";
close DATEI;
$i++;
}