Loeschen ohne Mailversand reparieren, Fehlertext praezisieren
Die Abfrage in aktion=10 stammte noch aus der Zeit der user-Tabelle und selektierte p.mail, p.jahrgang sowie a.timeid. Keine dieser Spalten existiert: persons fuehrt email und geburtstag, anfragen hat kein timeid. Die Abfrage warf damit eine PDOException, und da der Block kein try/catch hat, brach das Skript vor dem UPDATE ab - "Anforderung loeschen (ohne Mail)" war komplett wirkungslos. Spaltennamen korrigiert und die uebrig gebliebene Debug-Ausgabe von timeid entfernt, die als einzige Stelle den Wert genutzt hat. Ein Scan aller persons-Aliasse gegen das Schema zeigt keine weiteren Fundstellen. Der Fehlertext beim fehlgeschlagenen Mailversand in aktion=3 behauptete, es sei nichts gespeichert worden. Tatsaechlich laeuft das UPDATE vorher. Die Meldung benennt jetzt den echten Zustand und bittet darum, den Vorgang erneut auszufuehren. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
+7
-10
@@ -584,7 +584,9 @@ if(!check_worker()){
|
||||
|
||||
} catch (Throwable $e) {
|
||||
echo "<h3>Fehler</h3>";
|
||||
echo "E-Mailversand fehlgeschlagen – es wurde nichts gespeichert.<br>";
|
||||
echo "Der E-Mailversand ist fehlgeschlagen.<br>";
|
||||
echo "Die Anfrage wurde bereits als beantwortet gespeichert, der Patient hat aber keine Benachrichtigung erhalten.<br>";
|
||||
echo "Bitte den Vorgang erneut ausführen.<br>";
|
||||
}
|
||||
|
||||
}else if (($_POST["aktion"] ?? '') == "4") {
|
||||
@@ -956,14 +958,13 @@ if(!check_worker()){
|
||||
SELECT
|
||||
a.anfrageid,
|
||||
a.checked,
|
||||
a.timeid,
|
||||
a.requester_person_id,
|
||||
|
||||
p.vorname,
|
||||
p.nachname,
|
||||
p.mail,
|
||||
p.email,
|
||||
p.tele,
|
||||
p.jahrgang
|
||||
p.geburtstag
|
||||
FROM anfragen a
|
||||
INNER JOIN persons p ON p.person_id = a.requester_person_id
|
||||
WHERE a.anfrageid = :anfrageid
|
||||
@@ -978,19 +979,15 @@ if(!check_worker()){
|
||||
|
||||
$requesterPersonId = (int)$row["requester_person_id"];
|
||||
$checked = (int)$row["checked"];
|
||||
$timeid = $row["timeid"]; // kann NULL sein
|
||||
|
||||
$vorname = $row["vorname"];
|
||||
$nachname = $row["nachname"];
|
||||
$mail = $row["mail"];
|
||||
$mail = $row["email"];
|
||||
$tel = $row["tele"];
|
||||
$jahrgang = $row["jahrgang"];
|
||||
$jahrgang = $row["geburtstag"];
|
||||
|
||||
$userausgabe = $vorname . " " . $nachname;
|
||||
|
||||
// Debug wie vorher (falls du es noch brauchst)
|
||||
echo htmlspecialchars((string)$timeid, ENT_QUOTES, 'UTF-8');
|
||||
|
||||
// 2) Anfrage “löschen/abschließen” (ohne Mail)
|
||||
$stmt = $pdo->prepare("
|
||||
UPDATE anfragen
|
||||
|
||||
Reference in New Issue
Block a user