cResult
Aus CavoxCms Wiki
Mit dem cResult wird ein Formular ausgewertet: Werte auslesen, validieren und am Schluss in der Datenbank speichern oder als Array zurückliefern. Diese Objekte werden in den Command-Funktionen in einer Komponente verwendet.
$result = new cResult();
// Parameter aus Formular auslesen und validieren
$result->add("var", "numeric", false); // Parameter: Request-(/Formular-)name, Typ, Standardwert, muss ausgefüllt sein?
$result->addError("not_found"); // Fehler hinzufügen
$result->save("%mytable");
return $result;
Inhaltsverzeichnis |
Methoden
add
function add($name, $type, $required=false, $default=null, $paramfield=null, $error_message="error");
Parameter:
- $name = Formular-Name (GET- / POST-Variabel aus dem Formular (Commandvariabel))
- $type = Typ
- $paramfield = Eingabe-Name (default null: Derselbe wie $name). Feld in der Datenbank oder Key im Array das zurückgegeben wird von #save
- $error_message = Fehlermeldung (empfohlen in der Form my_error_message wie z.B. no_permissions).
addError
Fügt einen Fehler ins Resultat ein.
function addError($field, $error_message);
save
Wird mit Models gearbeitet, wird diese Funktion nicht mehr direkt benötigt. Siehe cObject#save
function save($table)
Speichert das Formular in der Datenbank. Wenn das Feld id > 0 dann wird der Eintrag mit der ID aktualisiert, ansonsten wird ein neuer Eintrag in der Datenbank erstellt.
Rückgabewert: ID des eingefügten Objekts, kann also mit if($result->save("table")) überprüft werden. Bei Fehler wird 0 zurückgegeben.
TODO: Weitere Parameter noch nicht stable, Rückgabewert?
hasErrors
Gibt die Anzahl Fehler im Objekt zurück.
function hasErrors()
if($result->hasErrors()){ ... }
fromError
Gibt ein cResult-Objekt zurück, das die angegebene Fehlermeldung enthält.
static function fromError($error_message)
fromPermissionError
Gibt ein cResult-Objekt mit der Fehlermeldung no_permissions zurück.
static function fromPermissionError()
setResultTuple
Setzt das Resultat des cResults. So können beispielsweise Informationen über XML oder Ajax weitergegeben werden. Dies ist sozusagen der Rückgabewert des Commands.
