Autor Zpráva
Maugli
Profil *
Potřeboval bych poradit s "ošetřením" e-mailu, když se zadává do formuláře, respektive do databáze. Ve zkratce, jestli máte nějaké řešení jak to ošetřit, aby tam při registraci nemohli uživatelé dávat nějaké nesmysly... více zavináčů, mezery, interpunkci atd.

Já jsem našel jen toto, ale nevím, jestli to je dostačující.

<?
$mail = $_POST['mail'];
if (ereg ('@[^@]+[.][a-zA-z]+$', $mail))
echo 'OK';
else
echo 'KO';
?>

Máte někdo nějakou radu, co všechno je potřeba ošetřit, aby při registraci před formulář nemohli uživatelé nějak zprznit e-mail?

Díky moc
nightfish
Profil
Máte někdo nějakou radu, co všechno je potřeba ošetřit, aby při registraci před formulář nemohli uživatelé nějak zprznit e-mail?
třeba ^[_a-zA-Z0-9.-]+@[_a-zA-Z0-9.-]+.[a-zA-Z]{2,4}$

a nebo po zadání e-mailu (nejlépe dvojitém, aby se předešlo překlepům) poslat e-mail s aktivačním kódem
je to sice trochu nepohodlné, ale nefunkční e-maily to odfiltruje 100%
(nicméně v tomto případě je vhodné ten mail poskládat nějak rozumně, aby si spamový filtr nemyslel, že jde o spam)

EDIT: ten regulární výraz jsem vzal z http://www.regexp.cz/
Maugli
Profil *
Ale takhle by ten uživatel mohl zadat třeba @@@.cz, ne?
Alphard
Profil
Ale takhle by ten uživatel mohl zadat třeba @@@.cz, ne?
nemohl, nejsou v možném výběru znaků, @ musí být právě jednou
tiso
Profil
http://php.vrana.cz - niekde to tam je...
Toto téma je uzamčeno. Odpověď nelze zaslat.

0