Email cím ellenörzése
2007.04.10. 08:07
Amikor regisztrálsz egy weboldalon, az oldal általában leellenőrzi, hogy a beírt e-mail címed szabályos formátumú-e. Ehhez szükségünk van egy sztringre (pl.: $email), hogy összehasonlítsuk a szabvánnyal.
Forráskód:
1
2
3
4
5
6
7
8
9
10
|
<html>
<head><title></title></head>
<body>
<?php
ereg("^[a-zA-Z0-9_]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$]",
$email);
?>
</b>
</body>
</html>
|
A szkript most csak a sztringet ($email) ellenőrzi, de semmilyen változót nem ad ki. Így egy IF függvényt kell beágyaznunk, ami - ha a sztring nem egyezik a szabványossal -, egy logikai változóval tér vissza.
1
2
3
4
5
6
7
8
9
10
11
12
|
<html>
<head><title></title></head>
<body>
<?php
if (eregi("^[a-zA-Z0-9_]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$]", $email));
{
return FALSE;
}
?>
</b>
</body>
</html>
|
Ez egy alap ellenőrző szkript, de többet is csinálunk. Most megvizsgáljuk a domain nevet a @ után, hogy valós-e. (Ezt akkor tehetjük meg, ha létezik egy MX rekord ennek a domain névnek. Ha a domain 25-ös portja nyitott, akkor a domain név használatban van.)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
<html>
<head><title></title></head>
<body>
<?php
list($Username, $Domain) = split("@",$email);
if(getmxrr($Domain, $MXHost))
{
return TRUE;
}
else
{
if(fsockopen($Domain, 25, $errno, $errstr, 30))
{
return TRUE;
}
else
{
return FALSE;
}
}
?>
</b>
</body>
</html>
|
Szerző: jackie