Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Vlákno názorů k článku
PHP okénko: Kontrola e-mailové adresy

Lampa
Lampa (neregistrovaný)
5. 5. 2006 7:48

druha moznost + dalsi moznost

druha moznost je ponekud nevyhovujici, kdyz si vezmeme casovou prodlevu a mail posilame na nejaky vytizenejsi server

pak je tady moznost jeste vyuzit PEAR:
<?
require_once('PEAR.php');
require_once('Mail/RFC822.php');

$p = new PEAR();
$m = new Mail_RFC822();

if (!$p->isError($m->parseAddressList($from, NULL, false, true)) {
# mail je v poradku
}
?>
Jakub Vrána aura:61
5. 5. 2006 10:28

Re: druha moznost + dalsi moznost

Tato knihovna kontroluje řetězec na to, zda lze použít v hlavičkách From, To a dalších (jak se rozebírá v perexu). Pokud si z e-mailové adresy chceme tento řetězec následně sestavit sami (např. ve tvaru Jmeno <email>), tak je tato kontrola nešikovná. Knihovna navíc propustí např. i adresy 1@1 nebo <1>, které jsou platné jen za určitých specifických podmínek.
Lampa
Lampa (neregistrovaný)
5. 5. 2006 10:42

Re: druha moznost + dalsi moznost

no prave ty parametry zarucuji ze se to jmeno nebude kontrolovat a bude se kontrolovat pres regularni vyraz pouze ta adresa
Jakub Vrána aura:61
5. 5. 2006 10:47

Re: druha moznost + dalsi moznost

Proč si to raději nejdřív nevyzkoušíte třeba s $from = 'Name <richard> (comment)'?
Lampa
Lampa (neregistrovaný)
5. 5. 2006 12:01

Re: druha moznost + dalsi moznost

mate pravdu, dal jsem zde spatny priklad

<?php
require_once('Mail/RFC822.php');
$x = new Mail_RFC822();
$y = $x->isValidInetAddress('lampa@root.cz', 1);
?>

vraci false kdyz je to spatne a kdyz je to dobre, tak vraci pole obsahujici cast pred a za zavinacem
uživatel si přál zůstat v anonymitě
5. 5. 2006 12:30

Re: druha moznost + dalsi moznost

a prelezie cez to aj taketo daco?

user%gmail.com@root.cz
user%gmail.com%seznam.cz@root.cz

:-))
Zasílat nově přidané příspěvky e-mailem