» »

Verify e-mail v PHP

Verify e-mail v PHP

poweroff ::

Nekje sem zasledil da se menda da preveriti ali nek e-mail obstaja na serverju ali ne.

Nekako takole naj bi šlo:
Telnetaš se na mailserver, port 25, in izvedeš naslednje komande:
- HELO moj_hostname
- MAIL FROM: jst@jst.org
- RCPT TO: iskani_mailbox

Potem pa na zadnji ukaz mailserver odgovori s sporočilom o uspehu (SMTP Reply Codes), in če je ta koda enaka 250 e-mail naslov obstaja, sicer pa ne.

No, problem je naslednji - KAKO to sprogramirat?

markz ::

zanimiva ideja...

sem malo poizkusal, samo nekateri serverji ne checkirajo, ce user res obstaja...
na arnesu recimo (upam, da me ne bojo kaj banali ali kaj podobnega) ti za vsak RCPT TO: vrne 250 Ok, ne glede na to kaj vpises... lahko celo neveljaven mail vpises...

v phpju pa bi se to verjetno dalo resit z fsockopen... nekaj v stilu (nisem probal, verjetno bi bilo kaj za popravit)

$fp = fsockopen("mail.server.com", 25, $errno, $errstr, 50);
saj je jasno, ne... server, port, error number, error string, timeout...

if (!$fp) { echo "napaka pri povezovanju"; }
else {
fputs($fp, "HELO hostname");
// lahko preberes output z fgets... lahko samo prve tri cifre,
// ki ti povejo kaj se je zgodilo...

fputs($fp, "MAIL FROM: mail@server.com");
fputs($fp, "RCPT TO: ali.obstaja@mail.com");
$code = fgets($fp, 3);
if ($code == "250") echo "mail obstaja";
else echo "napaka!";
fclose($fp);
}

booo... mogoce pa celo dela... bos probal? ;)
edino ne vem, kaksen je ukaz za prekinit povezavo... quit, exit, break, logout ne delajo... in ne vem, ce fsocopen posilja tako ciste ukaze kot telnet ali je zraven se kaj, kar bi bilo potrebno interpretirat...

markz ::

hehe ...

zanimiva ta funkcija fsockopen...
glej, kaj se da tudi narediti... (query whois database)

$domain = "slo-tech.com";

if (trim($domain) <> "") {
$domain = trim($domain);
$fp = fsockopen("whois.networksolutions.com", 43, $errno, $errstr, 30);

if (!$fp) {
echo "$errstr ($errno)";
} else {
fputs($fp, "$domainrn");
while (!feof($fp)) {
echo fread($fp,128);
}
fclose ($fp);
}
}

Zgodovina sprememb…

  • spremenilo: markz ()


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

PHP mail(); probem.

Oddelek: Izdelava spletišč
91788 (1209) Skrat
»

Vote script(php)-problem?

Oddelek: Izdelava spletišč
5945 (901) AlexUS
»

php mail()

Oddelek: Izdelava spletišč
71051 (969) alum
»

Problem z formo in POST

Oddelek: Izdelava spletišč
91557 (905) Brilko
»

SMS in PHP

Oddelek: Programiranje
151535 (1294) rokpok

Več podobnih tem