Transaktionen und PHP
als Präsentation ▻Die Datenbankschnittstelle PDO bietet für den Umgang mit Transaktionen die
Methoden beginTransaction, commit und rollback an. Wenn die
Datenbank-Verbindung unerwartet geschlossen wird obwohl noch eine Transaktion
offen ist, dann löst PDO selbst das Rollback aus.
Php Code Beispiel für Transaktion mit Fehlerbehandlung
try {
$dbh->beginTransaction();
$dbh->exec("INSERT INTO staff (id, first, last) VALUES (42, 'Alyssa', 'Hacker')");
$dbh->exec("INSERT INTO salarychange (id, amount, changedate) VALUES (42, 50000, NOW())");
$dbh->commit();
} catch (Exception $e) {
$dbh->rollBack();
echo "Error: " . $e->getMessage();
}
Bei einem realen Beispiel würde man nicht die exec Methode verwenden,
sondern wahrscheinlich prepared Statements. Aber die generelle Vorgehensweise
bleibt gleich.
Kapitel
-
Security
- A01 - Zugriffskontrolle
- A02 - Fehlkonfiguration
- A03 - Software Supply Chain Failures
- A04 - Cryptographic Failures
- A05 - Injection
- A06 - Insecure design
- A07 - Authentication Failures
- A08 - Software or Data Integrity Failures
- A09 - Security Logging and Alerting Failures
- A10 - Mishandling of Exceptional Conditions
- Prompt Injection