网页功能: 加入收藏 设为首页 网站搜索  
用PHP验证邮箱是否真实有效
发表日期:2006-02-16作者:李立华[原创] 出处:立华软件园  

这个程序是直接验证邮箱是否真实有效的函数,checkmail是主函数,使用时请直接使用即可,注意:因使用了DNS函数,该程序不能运行在Windows系统之下,使用Linux和FreeBSD都测试通过。

<?
set_time_limit(0);
if($_POST["mail"]!=""){
    echo "电子邮件地址:".$_POST["mail"];
    if( checkmail($_POST["mail"]))
        echo " — <font color=green>有效</font>";
    else
        echo " — <font color=red>无效</font>";
}
?>

<form method=post action="">
<input type=text name=mail ><input type="submit" value="检查">
</form>

<?

function server_parse($socket, $response, $line = __LINE__){
    while (substr($server_response, 3, 1) != ' '){
        if (!($server_response = fgets($socket, 512))){
            return false;
        }
    }
    if (!(substr($server_response, 0, 3) == $response)){
        return false;
    }
    return true;
}

function checkmail($strMail){
    $arrMail=explode("@",$strMail);
    if(! getmxrr ( $arrMail[1], $mxhosts ,$bb))return -1;
    if($mxhosts[0]=="")return -1;//不能获得主机的MX信息
    $cc=false;
    for($i=0;$i<count($mxhosts);$i++){
        echo $mxhosts[$i]." ";
        if( $socket = @fsockopen($mxhosts[$i], 25, $errno, $errstr, 5) ){
            if(server_parse($socket, "220", __LINE__)){
                $cc=true;
                break;
            }
        }
    }
    if($cc==false)return -2;//不能打开主机
    fputs($socket, "HELO ".$arrMail[1]." ");
    if(!server_parse($socket, "250", __LINE__))return -3;

    srand((double)microtime()*1000000);
    $randval = substr(md5(uniqid(rand())),0,6);
    fputs($socket, "MAIL FROM:<$randval@testemail.com> ");
    //使用是请将testemail.com改成你网站的域名
    if(!server_parse($socket, "250", __LINE__))return -4;

    fputs($socket, "RCPT TO:<$strMail> ");
    if(!server_parse($socket, "250", __LINE__))return -5;//无效的用户名

    fclose($socket);
    return true;
}
?>

我来说两句】 【加入收藏】 【返加顶部】 【打印本页】 【关闭窗口
中搜索 用PHP验证邮箱是否真实有效
本类热点文章
  用PHP验证邮箱是否真实有效
  PHP5的变化与PHP6展望
  用户IP、浏览器、操作系统
  基于PHP的聊天室(二)
  php调用mysql存储过程和函数的方法
  正则表达式在网络编程中的运用
  专家预言:PHP将比Java更受欢迎
  高效的中文字符串截取函数
  域名查询代码公布
  做个自己站内搜索引擎
  PHP初学者头疼问题总结
  基于PHP+MySQL的聊天室设计
最新分类信息我要发布 
最新招聘信息

关于我们 / 合作推广 / 给我留言 / 版权举报 / 意见建议 / 广告投放  
Copyright ©2003-2017 Lihuasoft.net webmaster(at)lihuasoft.net
网站编程QQ群   京ICP备05001064号 页面生成时间:0.00763