היי,
למעשה בימים האחרונים פנו אלי אנשים שונים ובקשו ממני לעזור להם לשפר את המערכות שהם בנו מבחינת "אבטחה" או איך נקרא לזה - "התחכמות".
אז החלטתי לתת לכם את הפונקציה האישית שלי אשר עובדת במערכות שבניתי.
הפונקציה בעצם מקבלת מחרוזת ומבצעת פעולה שימושית מאוד, בודקת האם המחרוזת היא דואר אלקטרוני תקינה אלא שבנוסף לבדיקה הרגילה של הביטוי הרגולרי, הפונקציה מנסה ליצור קשר עם השרת ולוודא שאכן הוא קיים.
היתרון הענקי של הפונקציה זה הוא שהיא לא משתמשת ב-fsockopen אלא ב-gethostbyname פשוט.
PHP קוד:
// נכתב על ידי רועי נוי
// http://www.roeenoy.com
function check_email( $email )
{
$email = htmlspecialchars ( stripslashes ( strip_tags ( $email ) ) , ENT_QUOTES );
if ( eregi ('^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,4}$', $email ) )
{
$domain = explode('@', $email ) ;
$domain_ip = gethostbyname($domain[1]);
if( $domain[1] != $domain_ip )
{
return true;
}else {
return false;
}
} else {
return false;
}
}
לא נראה לי שיש פה יותר מדי מה להסביר, כל אחד יכול להבין את הקוד הפשוט הזה.
על מנת להשתמש בפונקציה יש כמובן לכתוב כך:
PHP קוד:
if( check_email("my_username@yahoo.com") )
echo "<font color=green>Correct Email Address</font>";
else
echo "<font color=red>Wrong Email Address</font>";
מה ניתן לומר עוד?
זוהי פונקציה שימושית מאוד ואני ממליץ מקרב לב להשתמש בה.