bodo92
Aktives Mitglied
Guten Morgen,
in meiner Klasse für die Formularvalidierung ist ein Array der bei einem Fehler die Meldungen beinhaltet!
Habe also einen leeren Array initialisiert der bei Fehlern über array_merge() mit den Meldungen gefüllt wird, funktioniert alles super würde nur gerne wissen ob es auch eine gute Lösung ist!?
Hier ein Auszug meiner Klasse zur Validierung:
in meiner Klasse für die Formularvalidierung ist ein Array der bei einem Fehler die Meldungen beinhaltet!
Habe also einen leeren Array initialisiert der bei Fehlern über array_merge() mit den Meldungen gefüllt wird, funktioniert alles super würde nur gerne wissen ob es auch eine gute Lösung ist!?
Hier ein Auszug meiner Klasse zur Validierung:
PHP:
<?php
class Validator {
private $state = true;
private $message = array();
public function __construct() {
$this->validate();
}
public function validate() {
foreach ($_POST as $key => $value) {
var_dump($key, $value);
switch ($key) {
case 'datum':
list($tag, $monat, $jahr) = explode('.', $value);
if (empty($value)) {
$this->state = false;
$this->message = array_merge($this->message, array('Bitte geben Sie ein Datum an!'));
} else {
if (!checkdate($monat, $tag, $jahr)) {
$this->state = false;
$this->message = array_merge($this->message, array('Das angegebene Datum ist fehlerhaft!'));
}
}
break;
case 'zeit':
list($stunde, $minute) = explode(':', $value);
if (empty($value)) {
$this->state = false;
$this->message = array_merge($this->message, array('Bitte geben Sie eine Zeit an!'));
} else {
if (!($stunde > 0 && $stunde < 24 && strlen($stunde) == 2 && $minute > 0 && $minute < 60 && strlen($minute) == 2)) {
$this->state = false;
$this->message = array_merge($this->message, array('Die angegebene Zeit ist fehlerhaft!'));
}
}
break;
}
}
}
public function isValid() {
return array(
'state' => $this->state,
'message' => $this->message
);
}
}