[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • Addon Helper - Prüfen ob ein Feld einen Wert eingetragen hat
Seite 1 von 1

Addon Helper - Prüfen ob ein Feld einen Wert eingetragen hat

Verfasst: 26. Mai 2010, 04:04
von bigh03
Servus Redaxo Community,

ich hab jetzt schon länger nicht mehr mit Redaxo gearbeitet und jetzt bin ich gerade dabei mich mit dem Addon_Helper auseinander zusetzen.

Meine frage ist nun, wie kann ich eine Feld auf eine Eingabe prüfen.
Also nicht ob eine Mail gültig ist oder so. Einfach nur prüfen ob ein Text/Wert im Feld XY einhalten ist und wenn nicht eine Fehlermeldung ausgibt ('Feld XY ist ein Pflichtfeld')

Hier ist noch ein Link zum Plugin vom Addon_Helper:
http://dl.dropbox.com/u/6001155/news.rar

Im News (RAR) Plugin wollte ich die Felder "start Datum, end Datum, Titel [de], Text [de], Titel [en], Text [en]" auf eine Eingabe prüfen.


lg,
Herbert

Verfasst: 27. Mai 2010, 15:09
von bigh03
Hi nochmal!

So jetzt hab ich mal einwenig in den Klassen gestöbert und folgendes gefunden:

Code: Alles auswählen

function validate()
{
	global $I18N;

	foreach ($this->elements as $fieldset) 
	{

		foreach ($fieldset as $el) 
		{
		
			if (is_a($el,'rex_a350_form_date_element') && $el->value!='') 
			{
				if (!preg_match('/^[0-9]{1,2}.[0-9]{1,2}.[0-9]{2,4}$/',$el->value)) 
				{
					return $I18N->msg('a350_date_warning');
				}
			}
			
			if (is_a($el,'rex_a350_form_date_element') && $el->value=='') 
			{
				return $I18N->msg('a350_date_warning2');
			}
			
			if (is_a($el,'rex_a350_form_password_element') && $el->value=='' && $this->isEditMode()) 
			{
				unset($_POST[rex_form_element::_normalizeName($this->getFieldsetName())][$el->fieldName]);
			}
			
		}

	}
	return true;
}
Da hab ich dann auch gleich den Teil hinzugefügt:

Code: Alles auswählen

if (is_a($el,'rex_a350_form_date_element') && $el->value=='') 
{
	return $I18N->msg('a350_date_warning2');
}
Jetzt würde mir nur noch fehlen wie ich einzelne Felder auslesen kann.
z.B. hab ich da ein feld das ich so setze:

Code: Alles auswählen

$field =& $form->addTextField('0_title');
$field->setLabel('Titel [de]');
Gibts da jetzt eine möglichkeit dieses Feld oben in der Function "validate()" zu prüfen.

lg,
Herbert