Wenns danach geht, dann würd ich gleich preg_match() verwenden und den Benutzernamen von eben dieser Funktion zurückgeben lassen.

if(trim($_POST['from_mail']) == '') {
$err_text.='E-Mail-Adresse! ';
}
elseif(!preg_match("/^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,4}$/i",
substr($_POST['from_mail'] , 0, strpos($_POST['from_mail'], '@')))) {
$err_text.='Ungültige E-Mail-Adresse! ';
}
if(trim($_POST['from_mail']) == '') {
$err_text.='E-Mail-Adresse! ';
}
elseif(!preg_match("/^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,4}$/i",strtolower($_POST['from_mail']))) {
$err_text.='Ungültige E-Mail-Adresse! ';
}
else {
$user = substr($_POST['from_mail'] , 0, strpos($_POST['from_mail'], '@'));
}
elseif(!preg_match("/^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*.[a-z]{2,4}$/i",strtolower($_POST['from_mail']))) {
elseif(!preg_match("/^([0-9a-z]([-_.]?[0-9a-z])*)@[0-9a-z]([-.]?[0-9a-z])*.[a-z]{2,4}$/",strtolower($_POST['from_mail']),$ma)) {
print_r($ma);
Kommentar