① 怎麼利用php發送郵件求詳細教程
PHP雖然提供了mail()函數,但並不好用,而PHPMailer是一個不錯的郵件發送工具,接下來將詳細介紹,需要了解的朋友可以參考下:
本人使用wamp集成開發環境,Apache2.4.4, Mysql5.6.12 , php5.4.12.開始的時候使用mail()發送郵件,更改配置始終無法成功,了解到mail()函數使用需要sendmail程序。又下載了sendmail程序擴展包。按照網上的說法也改好了php.ini和sendmail.ini。使用foxmail 7.1創建了自己的qq郵箱賬戶,開啟了POP3/SMTP服務,更改發件伺服器為POP3,使用和收件伺服器相同的身份驗證,結果還是報錯:Warning: mail(): SMTP server response: 503 Error: need EHLO and AUTH first ! in F:\PHP\wamp\www\mail.php on line 8。以下是使用mail()函數發送郵件的php代碼:
[php] view plain
<span style="font-size:14px"><?php
$to = "[email protected]";
$subject = "Test mail";
$message = "Hello! This is a simple email message.";
$from = "[email protected]";
$headers = "From: $from";
$send=mail($to,$subject,$message,$headers);
if($send)
echo "Mail Sent";
else
echo "Sorry,mail sent failed!"
?></span>
在CSDN論壇上發現phpmailer可以方便快捷的發送郵件,以下寫出詳細使用教程:
1.需要下載PHPMailer文件包,(點擊打開鏈接)
2.確認你的伺服器已經系統支持socket,通過phpinfo()查看是否支持socket;
3.把文件解壓到你的WEB伺服器目錄下,就可以使用PHPMailer發送郵件了。
以下為前台表單php代碼:
[php] view plain
<span style="font-size:14px"><html>
<body>
<h3>phpmailer Unit Test</h3>
請你輸入<font color="#FF6666">收信</font>的郵箱地址:
<form name="phpmailer" action="testemail.php" method="post">
<input type="hidden" name="submitted" value="1"/>
郵箱地址: <input type="text" size="50" name="to" />
<br/>
<input type="submit" value="發送"/>
</form>
</body>
</html> </span>
以下為後台程序:
[php] view plain
<?php
/**
* Simple example script using PHPMailer with exceptions enabled
* @package phpmailer
* @version $Id$
*/
header("content-type:text/html;charset=utf-8");
ini_set("magic_quotes_runtime",0);
require('class.phpmailer.php');
try {
$mail = new PHPMailer(true); //New instance, with exceptions enabled
//$body = file_get_contents('contents.html');
//$body = preg_replace('/\\\\/','', $body); //Strip backslashes
$to = $_POST['to'];
$mail->CharSet="GB2312";//設置郵件字元編碼否則郵件會亂碼
$mail->Encoding="base64";
$mail->IsSMTP(); // tell the class to use SMTP
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->Port = 25; // set the SMTP server port
$mail->Host = "smtp.qq.com"; // SMTP server
$mail->Username = "[email protected]"; // SMTP server username
$mail->Password = "000000000000"; // SMTP server password
//$mail->IsSendmail(); // tell the class to use Sendmail
$mail->AddReplyTo("[email protected]","han qing");
$mail->From = "[email protected]";
$mail->FromName = "han qing";
//$to = "[email protected]";
$mail->AddAddress($to);
$mail->Subject =$mail->Subject = "=?utf-8?B?" . base64_encode("First PHPMailer Message") . "?=";
$mail->Body = "<h1>phpmailer演示</h1> 這是用PHPMAILER發的第一份郵件,從QQ郵箱發到Google郵箱.";
$mail->AddAttachment("F:/myloe.jpg");
$mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test
$mail->WordWrap = 80; // set word wrap
//$mail->MsgHTML($body);
$mail->IsHTML(true); // send as HTML
$mail->Send();
echo 'Message has been sent.';
} catch (phpmailerException $e) {
echo $e->errorMessage();
}
?>
② 請問一下,PHP配置SMTP怎麼弄
PHPMailer的獲取:
PHPMailer項目地址:PHPMailer 使用git命令克隆到本地,或直接在該項目頁面的右下方點擊「 Download ZIP 」即可獲取到完整的PHPMailer代碼包,再到本地解壓即可。
步驟一:使我們的QQ郵箱能夠發送郵件
這里怎麼說能夠發送郵件呢?其實我們的郵箱都是可以發送郵件的,但是要實現在我們的網站中發送郵件,那就要設置一下我們的QQ郵箱了,因為此時我們的網站現在是作為一個第三方客戶端存在的。
這里怎麼說能夠發送郵件呢?其實我們的郵箱都是可以發送郵件的,但是要實現在我們的網站中發送郵件,那就要設置一下我們的QQ郵箱了,因為此時我們的網站現在是作為一個第三方客戶端存在的
由於待會我們用到的是SMTP伺服器來發送,在這里建議把前面的兩項開啟了!當你點擊開啟的時候,它會提示:
<?phprequire_once("./functions.php");$flag=sendMail('[email protected]','lsgo在線通知','恭喜你成功加入LSGO實驗室,開啟你的學習之旅吧!');if($flag){echo"發送郵件成功!";
}else{echo"發送郵件失敗!";
}?>
③ php如何用qq郵箱發郵件
你可以用PHPMailer發,這是個很強大,使用起來很簡單的郵件類
參考http://www.oschina.net/code/snippet_59519_2429
④ 虛機 怎麼使用php發郵件
程序基本上沒有問題,如果有語法錯誤請自己查看日誌,關鍵的是下面這一段需要修改:
$smtpusermail = "[email protected]";//SMTP伺服器的用戶郵箱
$smtpemailto = "[email protected]";//發送給誰
$smtpuser = "[email protected]";//SMTP伺服器的用戶賬號
$smtppass = "***********";//SMTP伺服器的用戶密碼
$smtpusermail、$smtpuser要用你自己的QQ郵箱,例如[email protected];
$smtppass是你的QQ郵箱密碼,一般人是QQ密碼,有的人有獨立郵箱密碼;
$smtpemailto填寫你好友的QQ郵箱,例如[email protected]
這個程序的功能,是利用你的QQ郵箱身份給你的QQ好友發送郵件。
⑤ PHP 如何編寫用戶注冊後自動發送郵件到用戶郵箱
1、進入自己已有的郵箱,設置帳戶,選擇「開啟POP3/SMTP服務」並保存更改。我就哪我現有設置好的郵箱給大家演示(註:我用的是騰訊企業郵箱,特別注意我畫紅部分,第一個必要設置就是在郵箱里設置:開啟POP/SMTP服務,第二個就是必要獲取POP伺服器的信息),如圖: 2、進入dede後台,系統,系統基本參數,核心設置,配置好郵箱發信的信息.以下是我的配置(說明和如演示圖):是否啟用smtp方式發送郵件:是.smtp伺服器:smtp.exmail.qq.com(註:因為我用的是QQ企業郵箱,所以可以參照上圖演示第二個畫紅部分.POP伺服器為:我所填寫的:smtp.exmail.qq.com,一般這個POP伺服器的填寫不是亂填,請一定要參考你使用的郵箱他們所在的POP伺服器.)smtp伺服器埠:25(一般這個不需要可以去修改改變.默認為:25)SMTP伺服器的用戶郵箱:[email protected](這里填寫完整的郵箱地址)SMTP伺服器的用戶帳號:webmaster(這里填寫郵箱開頭的賬戶也就是用戶名)SMTP伺服器的用戶密碼:123456(密碼就不用多說了)3.進入dede後台,系統,系統基本參數,會員設置,在「會員使用許可權開通狀態(-10郵件驗證-1手工審核,0沒限制)」填-10如圖:教程演示操縱到這里,已經可以收到郵件了
⑥ 如何用php結合phpmailer發送郵件
<?php
header("content-type:text/html;charset=utf-8");
ini_set("magic_quotes_runtime",0);
require'php_mail/class.phpmailer.php';
require'php_mail/class.smtp.php';
functionsend_mail($to,$fromname,$title,$content){
try{
$mail=newPHPMailer(true);
$mail->IsSMTP();
$mail->CharSet='UTF-8';//設置郵件的字元編碼,這很重要,不然中文亂碼
$mail->SMTPAuth=true;//開啟認證
$mail->Port=25;//埠請保持默認
$mail->Host="smtp.163.com";//使用QQ郵箱發送
$mail->Username="[email protected]";//這個可以替換成自己的郵箱
$mail->Password="xxxxxxxxxxxxxxx";//注意這里是寫smtp的授權碼寫的不是QQ密碼,此授權碼不可用
//$mail->IsSendmail();//如果沒有sendmail組件就注釋掉,否則出現「Couldnotexecute:/var/qmail/bin/sendmail」的錯誤提示
$mail->AddReplyTo("[email protected]","mckee");//回復地址
$mail->From="[email protected]";
$mail->FromName=$fromname;
$to=$to;
$mail->AddAddress($to);
$mail->Subject=$title;
$mail->Body=$content;
$mail->AltBody="Toviewthemessage,!";//當郵件不支持html時備用顯示,可以省略
$mail->WordWrap=80;//設置每行字元串的長度
//$mail->AddAttachment("f:/test.png");//可以添加附件
$mail->IsHTML(true);
$mail->Send();
//echo'郵件已發送';
}catch(phpmailerException$e){
//echo"郵件發送失敗:".$e->errorMessage();
}
returntrue;
}
$neirong="聯系電話:".$_POST['phone']."<br/>".$_POST['content']."<hr><pstyle='float:right;'>郵件來自官網</p>";
send_mail('[email protected]',$_POST['fromname'],'來信了ヾ(≧O≦)〃嗷~',$neirong);
//send_mail('[email protected]',$_POST['fromname'],'可愛的保氧家官網來信了ヾ(≧O≦)〃嗷~',$neirong);
//環境PHP5.3親測可用
?>
下載郵件類,結合這個就可以了
⑦ 怎麼用php的mail函數發郵件
functionsendMail($to,$title,$content){
Vendor('PHPMailer.PHPMailerAutoload');
$mail=newPHPMailer();//實例化
$mail->IsSMTP();//啟用SMTP
$mail->Host=C('MAIL_HOST');//smtp伺服器的名稱(這里以QQ郵箱為例)
$mail->SMTPAuth=C('MAIL_SMTPAUTH');//啟用smtp認證
$mail->Username=C('MAIL_USERNAME');//你的郵箱名
$mail->Password=C('MAIL_PASSWORD');//郵箱密碼
$mail->From=C('MAIL_FROM');//發件人地址(也就是你的郵箱地址)
$mail->FromName=C('MAIL_FROMNAME');//發件人姓名
$mail->AddAddress($to,"尊敬的客戶");
$mail->WordWrap=50;//設置每行字元長度
$mail->IsHTML(C('MAIL_ISHTML'));//是否HTML格式郵件
$mail->CharSet=C('MAIL_CHARSET');//設置郵件編碼
$mail->Subject=$title;//郵件主題
$mail->Body=$content;//郵件內容
$mail->AltBody="";//郵件正文不支持HTML的備用顯示
$relt=$mail->Send();
if(!$relt){
writeLog('發送郵件錯誤,錯誤信息:'.$mail->ErrorInfo,1,'發送郵箱失敗');
}
return($relt);
}
這個是thinkphp版本的。
⑧ 如何在phpcms中設置smtp驗證發送郵件
一、使用易網庫提供的企業郵箱
1.登錄phpcms後台,點擊「設置」——「郵箱配置」進入郵箱設置界面,如圖1
⑨ 如何使用thinkphp發送郵件
Thinkphp3.2 PHPMailer 發送郵件結合QQ企業郵箱發送郵件
下載附件PHPMailer解壓到ThinkPHPLibraryVendor
在Common文件夾新建function.php
/**
*郵件發送函數
*/
functionsendMail($to,$title,$content){
Vendor('PHPMailer.PHPMailerAutoload');
$mail=newPHPMailer();//實例化
$mail->IsSMTP();//啟用SMTP
$mail->Host=C('MAIL_HOST');//smtp伺服器的名稱(這里以QQ郵箱為例)
$mail->SMTPAuth=C('MAIL_SMTPAUTH');//啟用smtp認證
$mail->Username=C('MAIL_USERNAME');//你的郵箱名
$mail->Password=C('MAIL_PASSWORD');//郵箱密碼
$mail->From=C('MAIL_FROM');//發件人地址(也就是你的郵箱地址)
$mail->FromName=C('MAIL_FROMNAME');//發件人姓名
$mail->AddAddress($to,"尊敬的客戶");
$mail->WordWrap=50;//設置每行字元長度
$mail->IsHTML(C('MAIL_ISHTML'));//是否HTML格式郵件
$mail->CharSet=C('MAIL_CHARSET');//設置郵件編碼
$mail->Subject=$title;//郵件主題
$mail->Body=$content;//郵件內容
$mail->AltBody="這是一個純文本的身體在非營利的HTML電子郵件客戶端";//郵件正文不支持HTML的備用顯示
return($mail->Send());
}
添加配置文件config.php
//配置郵件發送伺服器
'MAIL_HOST'=>'smtp.exmail.qq.com',//smtp伺服器的名稱
'MAIL_SMTPAUTH'=>TRUE,//啟用smtp認證
'MAIL_USERNAME'=>'[email protected]',//你的郵箱名
'MAIL_FROM'=>'[email protected]',//發件人地址
'MAIL_FROMNAME'=>'聚豐集團',//發件人姓名
'MAIL_PASSWORD'=>'******',//郵箱密碼
'MAIL_CHARSET'=>'utf-8',//設置郵件編碼
'MAIL_ISHTML'=>TRUE,//是否HTML格式郵件
最後就是使用PHPMailer發送郵件
<formaction="__URL__/add"method="post"enctype="multipart/form-data">
郵箱:<inputtype="text"id="mail"name="mail"/>
標題:<inputtype="text"id="title"name="title"/>
內容<inputtype="text"id="content"name="content"/>
<inputclass="button"type="submit"value="發送"style="margin:0auto;display:block;"/>
</form>
publicfunctionadd(){
if(SendMail($_POST['mail'],$_POST['title'],$_POST['content']))
$this->success('發送成功!');
else
$this->error('發送失敗');
}
⑩ QQ郵箱只支持html怎麼將php的代碼轉換成郵箱支持的格式來發送郵件
發不了PHP,你只能添加一些HTML的標簽,或者純文本發送