Thread MySQL + Transaktion -> funktioniert nicht (30 answers)
Opened by SirLant at 2003-08-25 16:00

SirLant
 2003-08-25 18:39
#31880 #31880
User since
2003-08-04
516 Artikel
BenutzerIn
[default_avatar]
Ne, mach ich aber mal

Edit:
Jetzt erhalte ich folgenden Fehler
Quote
Can't locate auto/Digest/MD5/retunr.al in @INC (@INC contains: e:/WWW/cgi-bin/pseudecom ./WebDB E:/Programme/perl/lib E:/Programme/perl/site/lib .) at E:/WWW/cgi-bin/pseudecom/doku_shop.cgi line 411


Die Funktion:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
sub passwort {

        my $md5 = Digest::MD5->new ();
        
        $md5->add (rand ());
        $md5->add (localtime (time ()));
        $md5->add ($$);         #Aktuelle Prozess-ID
        
        retunr $md5->hexdigest ();

}


bei mir liegt im verzeichnis perl/lib/digest eine md5.pm ,also ist MD5 ja vorhanden, aber weshalb läuft das nicht?


Durch das ausbauen von eval und if ($@), habe ich ja die Transaktion im grunde deaktiviert, da es bei einem Fehler nichtmehr Rückgängig gemacht wird.

Wenn ich das aber so schreibe, würde das gehen:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
sub rewrite {
                $dbh->rollback ();
                $dbh->disconnect ();
                $peh->schwerer_fehler ("Ein Problem mit der Datenbank ist aufgetreten.Bitte versuchen sie es noch einmal.");
}

$dbh->do ("INSERT INTO doku_bestell (bestell_datum, bestell_preis, aut_id, kunden_name,
                        kunden_email) VALUES (CURRENT_DATE,?,?,?,?)", undef,
                        $bestell_info->{gesamtpreis},
                        $bestell_info->{aut_id},
                        $bestell_info->{kunden_name},
                        $bestell_info->{kunden_email})
or rewrite();

?\n\n

<!--EDIT|SirLant|1061823081-->
--Programming today is a race between Software Enginers striving to build bigger and better idiot-proof Programs,
and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!

View full thread MySQL + Transaktion -> funktioniert nicht