Salve a tutti,
questa è una funzione che ho preso su internet (non ricordo dove) che controlla la validità di una mail
Nel mio script utilizzo questo controllo:
In locale funziona tutto perfettamente.
In rete invece no. Non capisco perchè ma mi dice sempre "La nuova email non e' valida" qualunque cosa inserisco
Da cosa può dipendere??
questa è una funzione che ho preso su internet (non ricordo dove) che controlla la validità di una mail
PHP:
function CheckEmail($email)
{
// elimino spazi, "a capo" e altro alle estremità della stringa
$email = trim($email);
// se la stringa è vuota sicuramente non è una mail
if(!$email)
{
return false;
}
// controllo che ci sia una sola @ nella stringa
$num_at = count(explode( '@', $email )) - 1;
if($num_at != 1)
{
return false;
}
// controllo la presenza di ulteriori caratteri "pericolosi":
if(strpos($email,';') || strpos($email,',') || strpos($email,' '))
{
return false;
}
// la stringa rispetta il formato classico di una mail?
if(!preg_match( '/^[\w\.\-]+@\w+[\w\.\-]*?\.\w{1,4}$/', $email))
{
return false;
}
return true;
}
Nel mio script utilizzo questo controllo:
PHP:
if (!CheckEmail($nuovamail))
{
echo"La nuova Email non e' valida
<meta HTTP-EQUIV='refresh' CONTENT='3; URL = modificaemail.php'>";
exit;
}
In locale funziona tutto perfettamente.
In rete invece no. Non capisco perchè ma mi dice sempre "La nuova email non e' valida" qualunque cosa inserisco
Da cosa può dipendere??