Webmaster общности: Predpriemach.com | SearchEngines.bg

    Валиден емайл

    Автор: stoqnski

    Здравейте на всички , който четат урока . В този урок ще ви покажа как да си направите функция с която да проверявате дали емайла съществува .

    1-ва стъпка :

    Стартираме фукнция примерно checkEmail

    function checkEmail ( $email )
    {
    }

    В тази функция имаме емайла,за всеки случай да я изчистим по следният начин :

    $email = htmlspecialchars ( stripslashes ( strip_tags ( $email ) ) , ENT_QUOTES ) ;

    2-ра стъпка:

    Сега ще използваме eregi да проверим форматът на емайла , по принцип трябва да има букви,числа и маймунка ( @ ) и точките . Ето така примерно :

    if ( eregi ( ' [ a-z||0-9 ] @ [ a-z||0-9 ] . [ a-z ] ', $email ) )
    {
    // останалият код тука ..
    }
    else
    {
    return false;
    }

    А какво ще стане ако има всички по-горе сменати атрибути ( точки , маймунка и т.н. ) ?
    Пример: pesho042-myglata@izmislensait.adasj

    • Ами ще проверим дали домейна съществува със fsockopen
    if ( @fsockopen ( $domain [ 1 ] , 80, $errno, $errstr, 3 ) ) //Проверява дали може да се свърже със сървърът на порт 80
    {
    return true;
    }
    else
    {
    return false;
    }

    3-та стъпка:

    Сега да съединим всичко в едно : [ functions.php ]

    function checkEmail ( $email )
    {
    $email = htmlspecialchars ( stripslashes ( strip_tags ( $email ) ) , ENT_QUOTES ) ;
    if ( eregi ( ' [ a-z||0-9 ] @ [ a-z||0-9 ] . [ a-z ] ', $email ) )
    {
    $domain = explode ( '@', $email ) ;
    if ( @fsockopen ( $domain [ 1 ] , 80, $errno, $errstr, 3 ) )
    {
    return true;
    }
    else
    {
    return false;
    }
    }
    else
    {
    return false;
    }
    }

    Ето и един скрипт , който проверява емайла: [index.php]

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
    <title>Валиден емайл</title>
    </head>
    <body>
    <form action="<?php $_SERVER['PHP_SELF']; ?>" method="post">
    <table border="0">
    <tr>
    <td>Е-майл:</td>
    <td><input name="email" type="text" id="email" /></td>
    </tr>
    <tr>
    <td> </td>
    <td><input type="submit" name="Submit" value="виж" /></td>
    </tr>
    </table>
    </form>
    <?php
    include("functions.php"); // проверката
    
    if($_POST['Submit'])
    {
    if(checkEmail($_POST['email']))
    {
    echo "Има такъв емайл!";
    }
    else
    {
    echo "Няма такъв емайл адрес.";
    }
    }
    ?>
    </body>
    </html>

    Надявам се да съм ви бил полезен 🙂 .
    Поздрави , Стоянски .

    Оставете коментар