Hi!
if query(...)
echo (class=ok) Aktion fehlerfrei, betroffene Datensätze: affected_rows.
else
echo (class=error) Fehlerhaft.
administratorbenachrichtigung(error_text)Da verstehe ich mehreres nicht. Ich habe gelernt, dass die if-Klausel _immer_ in Klammern stehen muß, wieso steht das 'query' also außerhalb von Klammern?
Ich schrieb ja auch, dass das nur die Logik verdeutlichen soll. Es ist also kein PHP-Code, soll nur zeigen, wie ich es meine.
aber was bedeutet if(...query...)?
Der Rückgabewert ist entweder false oder evaluiert im booleschen Kontext (also bei if) zu true. Daraus kann man sehen, ob ein Fehler auftrat oder die Query abgearbeitet werden konnte (auch dann wenn keine Ergebnismenge entstand oder kein Datensatz betroffen war).
Wenn ich bei
$sql="SELECT
id,
vorname,
familienname,
geburtsjahrFROM
11_dbtestWHERE
id=$id";
mitvar_dump($sql);
überprüfe, was hinter $sql steht, bekomme ich folgende Ausgabe:
string(83) "SELECTid
,vorname
,familienname
,geburtsjahr
FROM11\_dbtest
WHEREid
=4" bool(true)
Was sagt mir denn da das 'bool(true)' zum Schluß?
Das bool(true) kommt von einer zweiten var_dump()-Ausgabe oder einem zweiten Argument.
Außerdem überlege ich gerade, wie ich das von Dir vorgeschlagene Procedere umsetzen kann/soll, bei folgendem Code, der jetzt noch ohne Überprüfung einfach blind behauptet, dass der gewünschte Datensatz gelöscht worden ist:
Du sollst die Rückgabewerte der verwendeten Funktionen auswerten. Wenn du das hast, kannst du weitere Informationen dazunehmen, wie beispielsweise die affected_rows-Angabe.
Lo!