㈠ 如何用php結合phpmailer發送郵件
先下載phpmailer,保存在你的網站目錄,在發布的頁面添加一個函數用來區分發送的主題
require_once('class.phpmailer.php');
require_once("class.smtp.php");
$mail=newPHPMailer();
$mail->CharSet="UTF-8";//設定郵件編碼,默認ISO-8859-1,如果發中文此項必須設置為UTF-8
$mail->IsSMTP();//設定使用SMTP服務
$mail->SMTPAuth=true;//啟用SMTP驗證功能
$mail->SMTPSecure="ssl";//SMTP安全協議
$mail->Host="smtp.gmail.com";//SMTP伺服器
$mail->Port=465;//SMTP伺服器的埠號
$mail->Username="[email protected]";//SMTP伺服器用戶名
$mail->Password="your_password";//SMTP伺服器密碼
$mail->SetFrom('發件人地址','發件人名稱');//設置發件人地址和名稱
$mail->AddReplyTo("郵件回復人地址","郵件回復人名稱");
//設置郵件回復人地址和名稱
$mail->Subject='';//設置郵件標題
$mail->AltBody="為了查看該郵件,請切換到支持HTML的郵件客戶端";
//可選項,向下兼容考慮
$mail->MsgHTML('');//設置郵件內容
$mail->AddAddress('收件人地址',"收件人名稱");
//$mail->AddAttachment("images/phpmailer.gif");//附件
if(!$mail->Send()){
echo"發送失敗:".$mail->ErrorInfo;
}else{
echo"恭喜,郵件發送成功!";
}
㈡ PHP伺服器發送不了SMTP郵件怎麼辦
開啟php配置文件的兩個擴展:extension=php_sockets.dll和extension=php_openssl.dll,將前面的兩個分號去掉就行。 這兩個函數呢 然後重啟服務
詳細你可以去後盾人看看,這些都是後盾人裡面的,哪裡有詳細的視頻教學都是高質量,我自己就是在裡面學的。
㈢ PHP怎麼使用阿里雲企業郵箱發郵件
找個PHPMailer類
$mail = new \Vendor\PHPMailer(); //PHPMailer對象
$mail->CharSet = 'UTF-8'; //設定郵件編碼,默認ISO-8859-1,如果發中文此項必須設置,否則亂碼
$mail->IsSMTP(); // 設定使用SMTP服務
$mail->SMTPDebug = 0; // 關閉SMTP調試功能
$mail->SMTPAuth = true; // 啟用 SMTP 驗證功能
$mail->SMTPSecure = 'ssl'; // 使用安全協議
$mail->Host = $config['SMTP_HOST']; // SMTP 伺服器
$mail->Port = $config['SMTP_PORT']; // SMTP伺服器的埠號
$mail->Username = $config['SMTP_USER']; // SMTP伺服器用戶名
$mail->Password = $config['SMTP_PASS']; // SMTP伺服器密碼
$mail->SetFrom($config['FROM_EMAIL'], $config['FROM_NAME']);
$replyEmail = $config['REPLY_EMAIL'] ? $config['REPLY_EMAIL'] : $config['FROM_EMAIL'];
$replyName = $config['REPLY_NAME'] ? $config['REPLY_NAME'] : $config['FROM_NAME'];
$mail->AddReplyTo($replyEmail, $replyName);
$mail->Subject = $subject;
$mail->MsgHTML($body);
$mail->AddAddress($to, $name);
if (is_array($attachment)) {
// 添加附件
foreach ($attachment as $file) {
is_file($file) && $mail->AddAttachment($file);
}
}
return $mail->Send() ? true : $mail->ErrorInfo;
㈣ 如何使用php通過smtp發送郵件步驟
由於php沒有提供現成的smtp函數,卻提供了一個功能不甚靈活的mail()函數,這個函數需要伺服器配置上的支持,並且不支持smtp驗證,在很多場合無法正常的工作,因此不建議使用。
首先是使用telnet來連接本地的25埠,稍微熟悉點網路的人都知道smtp協議使用25埠,這也就是說,現在在連接本地的smtp伺服器。
<?php
require_once'Mail.php';
$conf['mail']=array(
'host'=>'xx.xx.xx.xx',//smtp伺服器地址,可以用ip地址或者域名
'auth'=>true,//true表示smtp伺服器需要驗證,false代碼不需要
'username'=>'tester',//用戶名
'password'=>'retset'//密碼
);
/***
*使用$headers數組,可以定義郵件頭的內容,比如使用$headers['Reply-To']可以定義回復地址
*通過這種方式,可以很方便的定製待發送郵件的郵件頭
***/
$headers['From']='[email protected]';//發信地址
$headers['To']='[email protected]';//收信地址
$headers['Subject']='testmailsendbyphp';//郵件標題
$mail_object=&Mail::factory('smtp',$conf['mail']);
$body=<<<MSG//郵件正文
helloworld!!!
MSG;
$mail_res=$mail_object->send($headers['To'],$headers,$body);//發送
if(Mail::isError($mail_res)){//檢測錯誤
die($mail_res->getMessage());
}
?>
㈤ PHP如何通過SMTP驗證發送郵件
PHP mail()與SMTP驗證
缺乏靈活性是PHP的mail()函數顯得過於簡單的部分原因。最重要而且令人沮喪的是,死板的mail()函數通常還不允許你使用你選擇的SMTP伺服器,並且它也根本不支持如今已被眾多郵件伺服器採用的SMTP驗證。
幸運的是,克服PHP本身的缺陷既不困難,也不麻煩,更不痛苦。對於大多數情況下的郵件應用,免費的PEAR Mail包足夠提供全部的所需功能與靈活性,並且它也能夠與你期望的外部郵件伺服器進行驗證。在提高安全性的方面,它也支持SSL連接。
通過SMTP驗證在PHP腳本中發送郵件
在PHP腳本中通過SMTP驗證連接外部SMTP伺服器並且發送郵件的方法如下:
確保PEAR Mail包已經安裝。
通常,它已經安裝到了PHP之中,尤其在PHP 4及以後的版本中。放手一試吧。
<?php
require_once"Mail.php";
$from="SandraSender<s>";
$to="RamonaRecipient<r>";
$subject="Hi!";
$body="Hi, Howareyou?";
$host="mail.example.com";
$username="smtp_username";
$password="smtp_password";
$headers=array('From'=>$from,
'To'=>$to,
'Subject'=>$subject);
$smtp=Mail::factory('smtp',
array('host'=>$host,
'auth'=>true,
'username'=>$username,
'password'=>$password));
$mail=$smtp->send($to,$headers,$body);
if(PEAR::isError($mail)){
echo("<p>".$mail->getMessage()."</p>");
}else{
echo("<p>Messagesuccessfullysent!</p>");
}
?>
㈥ 請問一下,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.ini發送郵件
我的環境:XAMPP v3.2.1
准備工作
1.檢查有沒有sendmail程序,在xampp安裝目錄下的sendmail文件夾下。沒有則下載sendmail.zip(http://glob.com.au/sendmail/),然後解壓並放在在xampp目錄下。
2.去mail.google.com注冊一個google的郵箱,比如賬號:[email protected],密碼:passwd
配置步驟:
1.PHP.ini中如下設置:
; SMTP = localhost;
smtp_port = 25;
sendmail_from = sendmail_path = "C:/xampp/sendmail/sendmail.exe -t"
也就是注釋掉"SMTP"、"smtp_port"、"sendmail_from",設置sendmail_path變數的值為以上所示(根據自己電腦上sendmail.exe的目錄自行設置)。
2.sendmail.ini中如下設置
smtp_server=smtp.gmail.com
smtp_port=587
smtp_ssl=TLS
error_logfile=error.log
debug_logfile=debug.log
[email protected]
auth_password=passwd
測試代碼:
[php] view plain print?
<?php
$now = date("Y-m-d h:i:s");
$headers = 'From: name<[email protected]>';
$body = "hi, this is a test mail.\nMy email: [email protected]";
$subject = "test mail";
$to = "[email protected]";
if (mail($to, $subject, $body, $headers))
{
echo 'success!';
}
else
{
echo 'fail';
}
?>
以上代碼執行後[email protected] 會收到發過來的郵件,但是郵件頭中的[email protected]會被替換成[email protected]。