程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php+js+mysql設計的仿webQQ-<1>郵箱驗證

php+js+mysql設計的仿webQQ-<1>郵箱驗證

編輯:關於PHP編程

最近用php+js+mysql做了一個仿webQQ的課程設計,收獲很多,現在將關鍵的技術總結一下,供大家學習交流。

<1>郵箱驗證

用戶在注冊的時候,會在文本框裡輸入郵箱,這個時候通過文本框的onblur和onchange事件用Ajax無刷新技術來判斷用戶輸入的郵箱是否合法以及是否與已注冊的郵箱沖突。

Js代碼

[html]
function checkEmail(Email) 
{    
var xmlhttp; 
if (window.XMLHttpRequest) 
  {// code for IE7+, Firefox, Chrome, Opera, Safari 
    xmlhttp=new XMLHttpRequest(); 
    if(xmlhttp.overrideMimeType) 
    {//設置MIME類別 
       xmlhttp.overrideMimeType("text/xml"); 
    } 
  } 
else 
  {// code for IE6, IE5 
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
  } 
  var url="checkEmail.php?email="+document.getElementById("email").value;    //轉到checkEmail.php進行驗證 
  xmlhttp.open("GET",url,true); 
xmlhttp.onreadystatechange=function() 
  { 
  if (xmlhttp.readyState==4 && xmlhttp.status==200) 
    {   
       document.getElementById("error1").innerHTML=xmlhttp.responseText; 
    } 
  }  
xmlhttp.send(null); 

function checkEmail(Email)

var xmlhttp;
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
   xmlhttp=new XMLHttpRequest();
    if(xmlhttp.overrideMimeType)
    {//設置MIME類別
       xmlhttp.overrideMimeType("text/xml");
    }
  }
else
  {// code for IE6, IE5
   xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
  var url="checkEmail.php?email="+document.getElementById("email").value;    //轉到checkEmail.php進行驗證
  xmlhttp.open("GET",url,true);
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    { 
    document.getElementById("error1").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.send(null);
}

 

PHP代碼

[php]
<?php 
header('Content-Type:text/html;charset=GB2312');    //編碼方式設置  
include("conn.php"); 
$email=$_GET["email"]; 
$len=strlen($email); 
if($email==null) 
  { 
     echo "<font color=red size=2px>*郵箱不能為空!</font>"; 
  } 
else 
  { 
     if($len>50) 
       { 
           echo "<font color=red size=2px>*郵箱不要超過50個字符!</font>"; 
       } 
     else 
       { 
           if(eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$",$email))    //在php中用正則表達式驗證郵箱  
             { 
                $sql="select * from user where email='$email'";     //連接數據庫進行查詢看郵箱是否被用  
                $result = mysql_query($sql); 
                $num=mysql_num_rows($result); 
                if($num>0) 
                  { 
                     echo "<font color=red size=2px>*該郵箱已被用!</font>"; 
                  } 
                else 
                  { 
                     echo "<font color=green size=2px>*郵箱可用!</font>"; 
                  } 
     
             } 
           else 
             { 
                echo "<font color=red size=2px>*該郵箱不可用!</font>"; 
             }    
       }   
  } 
?> 
<?php
header('Content-Type:text/html;charset=GB2312');    //編碼方式設置
include("conn.php");
$email=$_GET["email"];
$len=strlen($email);
if($email==null)
  {
    echo "<font color=red size=2px>*郵箱不能為空!</font>";
  }
else
  {
     if($len>50)
    {
        echo "<font color=red size=2px>*郵箱不要超過50個字符!</font>";
    }
  else
    {
        if(eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$",$email))    //在php中用正則表達式驗證郵箱
       {
       $sql="select * from user where email='$email'";     //連接數據庫進行查詢看郵箱是否被用
                $result = mysql_query($sql);
                $num=mysql_num_rows($result);
             if($num>0)
               {
        echo "<font color=red size=2px>*該郵箱已被用!</font>";
      }
       else
      {
         echo "<font color=green size=2px>*郵箱可用!</font>";
      }
 
    }
     else
       {
     echo "<font color=red size=2px>*該郵箱不可用!</font>";
    } 
    } 
  }
?>
 
通過對郵箱驗證的學習,我想其他的驗證應該很簡單了吧!(未完待續)

 

摘自 wyzhangchengjin123


 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved