Autor Zpráva
Mufna
Profil
Zdravím Vás. Tohle mi nefunguje (a moc tomu ani nerozumím). Aby bylo zřejmé o co mi jde: chci zkontrolovat, zda e-mail vyhovuje kritériím $user_part a $domain_part. Pokud ne, nastaví se $err_email na hodnotu 1. Chci to mít upravené pro gpc_magic_quotes = Off. Prosím poraďte mi, jak mám sestavit tu podmínku. Nechci to mít v samostatné funkci. Předem díky.
// * kontrola e-mailové adresy
$err_email = 0;
$user_part = '[-a-z0-9!#$%&\'*+/=?^_`{|}~]'; // znaky tvořící uživatelské jméno
$domain_part = '[a-z0-9]([-a-z0-9]{0,61}[a-z0-9])'; // jedna komponenta domény
if (!eregi("^$user_part+(\\.$user_part+)*@($domain_part?\\.)+$domain_part\$", $POST["email"])) {
           $err_email = 1;
}
Alphard
Profil
Eregi() nepatří do rodiny perspektivních funkcí (jsou pomalé a relativně brzy se budou rušit). Spíše vám doporučuji na tohle zapomenout a najít si regulár do preg_match(). Lze jich snadno najít stovky, tak proč znovu vymýšlet kolo.
Mufna
Profil
Alphard
Já vím, použil bych samozřejmě raději preg_match() ... ale prostě v tomto případě nevím jak
Alphard
Profil
Jestli máte dostatečnou verzi PHP, lze použít PHP: filter_var - Manual.
Konkrétní řešení vám schválně nepíši, sám si jím nejsem jistý. Zkontrolovat mailovou adresu není vůbec snadné (Validate an E-Mail Address with PHP, the Right Way | Linux Journal).
Mufna
Profil
Alphard
ok, dík za odkazy

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: