Im tl_member beim entsprechenden Feld den save_callback verwenden.
Der wird auch im Frontend ausgeführt.
PHP-Code:
$GLOBALS['TL_DCA']['tl_member']['fields']['kundennummer'] = array
(
'label' => &$GLOBALS['TL_LANG']['tl_member']['kundennummer'],
'exclude' => true,
'search' => true,
'inputType' => "text",
'save_callback' => array
(
array('tl_member_ml', 'validateKundennummer')
),
'eval' => array('maxlength'=>64, 'rgxp'=>'natural', 'feEditable'=>true, 'feViewable'=>true, 'feGroup'=>'contact', 'tl_class'=>'w50', 'mandatory'=>false, 'chosen'=>true),
'sql' => "int(10) unsigned NOT NULL default 0"
);
PHP-Code:
public function validateKundennummer($kundennummer, $user)
{
// nicht getestet
if (defined('TL_MODE') && TL_MODE == 'FE') {
return "diesunddas";
}
if ($kundennummer == "")
return 0;
if (is_numeric($kundennummer)) {
return $kundennummer;
}
return 0;
}
Wurde bei mir erst notwendig, seitdem ich MySql im Strict-Mode betreibe...