it-swarm.com.de

Wie kann ich eine benutzerdefinierte Nachricht für eine fehlgeschlagene JFormRule-Validierung bereitstellen?

Wenn ein benutzerdefiniertes Feld überprüft wird und der Test fehlschlägt, gibt Joomla die folgende Standardfehlermeldung zurück:

**Warning** Invalid field: My Field

Wie kann ich die zurückgegebene Nachricht angeben, um zu erklären, warum sie ungültig ist?

7
GDP

Füge das message Attribut hinzu, aber besser so:

<field name="my_code" type="text" size="15" label="My Code"
  validate="myrule" message="Field may only contain A-z or 0-9" />

:)

3
Fedik

Fügen Sie für eine Nachricht, die variieren kann, das Attribut message wie folgt hinzu:

public function test(SimpleXMLElement $element, $value, $group = null, JRegistry $input = null, JForm $form = null)
{
    if(!preg_match('/^[a-z0-9]+$/i', $value)) {
        $element->addAttribute('message', 'Field may only contain A-z or 0-9');
        return false;
    }elseif(!$somethingelse) {
        $element->addAttribute('message', 'Something else is wrong');
        return false;
    }
1
GDP