Thread keine Verbindung zur DB
(26 answers)
Opened by maryl at 2010-08-13 11:52
Ich habe mir mal Dein Skript angesehen und etwas umformuliert.
Syntax Check gibt keine Fehler/Warnungen mehr aus; Vielleicht probierst Du es mal aus: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 #! c:/perl/bin/perl -w use strict; use CGI qw(:standard *table); use CGI::Carp qw/fatalsToBrowser/; use DBI; my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday) = gmtime(time); $mon++; $year += 1900; my $dbh = DBI->connect('DBI:ODBC:db1') or die "Fehler beim Connect: ",$DBI::errstr; my $sqlstatement = "SELECT Tabelle1.Kundennummer, Tabelle2.Rechnungsbetrag FROM Adressen INNER JOIN Tabelle2 ON Tabelle1.Kundennummer = Tabelle2.Kundennummer WHERE Tabelle1.Kundennummer =?"; my $sth = $dbh->prepare($sqlstatement) or die $dbh->errstr; $sth->execute (param('Kundennummer')) or die $sth->errstr; print header(-type => 'text/html'), start_html(-title => 'Auswahl'), h3('Ergebnis'), hr(), start_table() ; my @row = (); my $i = 1; while (@row=$sth->fetchrow_array()){ # HTML Tabellenzeile ausgeben print Tr( map { td($_) } @row ); my $rechnung = 'd:\\SGD\\Apache2\\htdocs\\rechnung'.$i.'.txt'; if ( open my $output, '>', $rechnung ) { # Ausgabe einer langen Liste ins Dateihandle $output print $output, "Rechnungsnummer:\tRE4711\tvom: $mday\.$mon\.$year\n\n\n", "Kundennummer: $row[0]\n\n", $row[3],"\n\n", $row[2],"\n\n", $row[1],"\n\n", "Telefonnummer: $row[4] \n\n\n\n\n", # $row[2]," ",$row[3],"\n" x 7, "-" x 34 ,"\n", "Rechnungsbetrag:\t","\n", "-" x 34 ,"\n\n", "Mit freundlichen Grüßen\nIhre Webfirma", ; close $output or die "$rechnung: $!\n"; } else { # Meldung, dass Oeffnen fehlgeschlagen warn "$rechnung: $!\n"; } $i++; } print end_table(), end_html(), ; meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen! |