1. 怎樣用php實現郵件監測
可以加點分數嗎~~~
我寫出來了,下面的程序調試通過:
<?php
//下面三行是伺服器、用戶、密碼,
$server='pop.163.com';
$user='[email protected]';
$pass='********';
//下面是進行檢測郵件的語句
$fp = fsockopen($server, 110, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br />\n";
} else {
$ret=fgets($fp);
if (substr($ret,0,3)!="+OK") echo "CONNECT ERROR: $ret\n";
fwrite($fp, "USER $user\n");
$ret=fgets($fp);
if (substr($ret,0,3)!="+OK") echo "USER ERROR: $ret\n";
fwrite($fp, "PASS $pass\n");
$ret=fgets($fp);
if (substr($ret,0,3)!="+OK") echo "PASS ERROR: $ret\n";
else if (preg_match_all('/(\d+)/', $ret, $reg)) echo "你有 {$reg[1][0]} 封新郵件,占 {$reg[1][1]} 位元組空間。";
else echo $ret;
fclose($fp);
}
?>
我的機器上運行的結果如下:
E:\ygb>php a.php
你有 1749 封新郵件,占 1050661745 位元組空間。
你稍微修改一下,使之可以在網頁上,讓用戶選擇伺服器、輸入用戶和密碼,這些我相信你會的吧,祝你好運。
2. PHP檢查判斷字元串是否是有效的Email郵箱地址
<?php
$mail='[email protected]';//郵箱地址
$pattern='/^([a-z0-9])(([-a-z0-9._])*([a-z0-9]))*@([a-z0-9])*(.([a-z0-9])([-a-z0-9_-])([a-z0-9])+)*$/i';//正則表達式
preg_match($pattern,$mail,$matches);
var_mp($matches);//輸出匹配結果
?>
菜鳥教程上這么寫的,應該沒問題
3. PHP正則表達式如何檢測現有的正確郵箱域名後綴
這個是IT群里的朋友!我不去群里了,在這里幫你把問題解決了吧!
其實嚴格說來,正則表達式只是一個模型匹配,所以直接使用模型匹配時我們有一個高通原理,也就是說匹配出來的內容是要大於你所需要的內容。就比此題來說,後邊可以匹配任何一個合規則的內容,而不可能精確地直接是你想要的內容——這就是高通,如果非要匹配到你想要的內容,使用正則運算有時是非常不合適的!所以這里不建議你使用這方式,或者是部分使用這種方式的形式。
高通就是通過你不全是你想要的,但你想要的一定全在里邊。
那麼,為什麼不考慮使用ajax的方式呢?後台自己設計一會資料庫,@前半段使用正則表這式,扣後半段直接使用數據存儲的內容,這樣可以精確到任何一個你想要的。
因為這里你想要的與不想要的其實也很模糊,你也不知道ckk這個域名在以後是不會被啟用!那麼你可以使用資料庫方式,由管理員自由添加!不用去修改那將來的表達式的!
但事實上很少人用這種方式——他們都在使用注冊時郵箱認證的方式,也就是說,發到你郵箱里一封信,輔助你完成注冊,這種情況雖然是高通,其他實他只是方便用戶能輸入正確,而不是要的確信數據,任何設計都要記著這句話——任何客戶端的信息都是不可信的!就算用JS完成了正則,那麼如果對方有意屏掉您的JS這十分容易的!所以你的正則根本不是用來驗證,而是方便用戶。
正是這種原因,高通的理由也是其存在的一個原因!就算使用了我說的資料庫,利用ajax來檢查,那麼別人照樣可以讓你的ajax不工作,而且,不是伺服器通過了,郵箱就一定有人注冊的!所以從這方面上來講,資料庫的實現意義也不大!
根據js的特點,客戶端的驗證沒有必要太這於麻煩,就算是服務端的驗證,建議你的也只採用這種方式即可。沒有使用資料庫的必要的——這個代價與達到的效果是不成比例的!
說完了,其實等於我也不解決!
4. php驗證郵箱格式
PHP正則表達式驗證郵箱示例如下:
<?php
$email='[email protected]';
$pattern="/([a-z0-9]*[-_.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[.][a-z]{2,3}([.][a-z]{2})?/i";
if(preg_match($pattern,$email)){
echo '郵箱驗證通過!';
} else{
echo '郵箱格式錯誤!';
}
?>
5. 用php寫的一個函數來檢查郵箱格式是否正確,但我輸入正確的郵箱也顯示錯誤,可以幫我看一下嗎
<?php
function _check_email($_email){
$_ema='/^(\w)+@(\w)+((\.\w+)+)$/帶逗';
if(!preg_match($_ema,$_email)){
return '錯誤的email格式';
}else{
return '正確的email格式並行橘';
}
}
echo _check_email("[email protected]");
?>
經測試,正則絕團沒有問題啊!
6. 如何用php寫驗證郵箱對不對
html 1.html
<!DOCTYPEhtml>
<htmllang="en">
<head>
<metacharset="UTF-8">
<title>Document</title>
</head>
<body>
<formaction="1.php"method="post">
email:<inputtype="text"name="email"><br>
<inputtype="submit"value="驗證">
</form>
</body>
</html>
php 1.php
<?php
$email=$_POST["email"];
if(!filter_var($email,FILTER_VALIDATE_EMAIL))
{
echo"E-mail不正確";
}
else
{
echo"E-mail正確";
}
?>
7. php如何實現郵箱驗證
這是一個可以發送郵件的程序。程序是直接使用SMTP協議進行發送,用到了經典的phpMailer庫。
請閱讀apply.php文件。
發郵件之前你需要一個用來發送郵件的郵箱賬號。但不能使用這個賬號發送太多的郵件,否則會被當做垃圾郵件屏蔽。如果發送量較大,可以多申請幾個郵箱。
關鍵變數說明:
subject: 郵件的主題
email: 郵件的內容
host: SMTP主機,與你申請的郵箱的服務商有關,詳見代碼內注釋
fromname: 發件人的名字,可以任意寫,對方收到時能看到這個名字
from: 發件人地址
to: 收件人地址,代碼中寫了$to = $from,請自行更改
username和password: 你郵箱的賬號和密碼,一般username都等於發件人地址。必須提供,否則無法發送郵件。
PHPMailer說明:
$mailer = new PHPMailer(true);
$mailer->IsHTML(true); // 這是一封HTML郵件
$mailer->IsSMTP(true); // 連接SMTP服務發送郵件
# $mailer->SMTPDebug = true; // 是否開啟調試模式
$mailer->CharSet = 'UTF-8'; // 郵件內容的編碼,和你程序的編碼保持一致
$mailer->Encoding = 'base64'; // 郵件傳遞過程使用的編碼
$mailer->FromName = $fromname; // 發件人
$mailer->Host = $host; // SMTP服務地址
$mailer->AddAddress($to); // 添加收件人
$mailer->From = $from; // 設置發件人
$mailer->Subject = $subject; // 設置主題
$mailer->MsgHTML($email); // 設置HTML郵件內容
$mailer->SMTPAuth = true; // 開啟SMTP驗證
$mailer->Username = $username; // 設置用戶名
$mailer->Password = $passwd; // 設置密碼
$mailer->Send(); // 發送郵件
8. 如何寫PHP注冊頁面檢測密碼郵箱用戶的合法性
//驗證表單信息,是否合法
function Form_Validator(){global $u_name,$password,$confpwd,$centi_code,$sex,$birth_year,$birth_month,$birth_day,$pass_quest,$pass_answer,$email;
$u_name=$_POST[u_name];
$password=$_POST[password];
$confpwd=$_POST[confpwd];
$centi_code=$_POST[centi_code];
$sex=$_POST[sex];
$birth_year=$_POST[birth_year];
$birth_month=$_POST[birth_month];
$birth_day=$_POST[birth_day];
$pass_quest=$_POST[pass_quest];
$pass_answer=$_POST[pass_answer];
$email=$_POST[email];$sign=1;if($u_name=="")$sign=0;if(($password=="")||($confpwd=="")||($password!=$confpwd))$sign=0;if($centi_code=="")$sign=0;if($sex=="")$sign=0;if(($birth_year=="")||($birth_month=="")||($birth_day==""))$sign=0;if(($pass_quest=="")||($pass_answer==""))$sign=0;if($email=="")$sign=0;if($sign==0){$msg="輸入的信息不全,或者格式有誤,請仔細檢查穗攔桐並認真填寫";
$msg.="<a href = register1.php>返回</a>";echo $msg;exit;}return(1);}這是衡乎一個簡單的檢驗用戶合法的函數~
至於 郵箱的檢驗
////////////////////////電子郵件合法性檢查//////////////////////////////////猜坦////
$email="[email protected]";
if(eregi("^[_\.0-9a-z]+@([0-9a-z][0-9a-z]+\.)+[a-z]{2,3}$",$email)){echo "Congratulations,your e_mail address passed this check!<br>";}elseecho"Sorry,your e_mail address may be illegal!<br>";
你可以自己結合一下。。。完整的代碼就不寫拉。。留給你自己去思考!
9. 用PHP如何判斷郵箱是否存在
這要看你用什麼資料庫了 php只能幫你跟資料庫交流 真正的判斷還在資料庫這凳陵一塊
和php一起最常用的是mysql
如果是這個資料庫的話 判斷棗神戚方法如下
$mail = "[email protected]";
$query = mysql_query("SELECT * FROM `tablename` WHERE `mail`=\瞎知"$mail\"");
$nb = mysql_num_rows($query);
if ($nb > 0)
echo "存在";
else
echo "不存在";
10. php判斷郵箱跟手機號是否重復
php用正則表達式判斷手機號碼的寫法:從文章中匹配出所有的手機號就可以