㈠ 請問一下,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 發送郵件的代碼
php裡面有mail函數用於發送郵件,具體你可以查一下手冊,如果遇到問題再回來問。
以前來網路提問,很奇怪為什麼老是有人去搜索一些網頁文章來帖給我,這幾天有閑心作答,才很詫異地發現,原來真的有很多人提了問題出來,等人去搜索答案回來貼。
這是你和你們同學約好的刷分辦法嗎?
㈢ PHP功能齊全的發送郵件類及用法,急,請好心人幫下忙。
是這樣的。SMTP設置只能在windows伺服器下使用。
如果你的伺服器是Linux。直接就可以使用php的函數mail()發送郵件。
mail函數在windows下是不能夠使用的。只能使用SMTP發送。
㈣ 怎麼利用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擴展
PHP取得成功的一個主要原因之一是她擁有大量的可用擴展。web開發者無論有何種需求,這種需求最有可能在PHP發行包里找到。PHP發行包包括支持各種資料庫,圖形文件格式,壓縮,XML技術擴展在內的許多擴展。
擴展API的引入使PHP3取得了巨大的進展,擴展API機制使PHP開發社區很容易的開發出幾十種擴展。現在,兩個版本過去了,API仍然和PHP3時的非常相似。擴展主要的思想是:盡可能的從擴展編寫者那裡隱藏PHP的內部機制和腳本引擎本身,僅僅需要開發者熟悉API。
有兩個理由需要自己編寫PHP擴展。第一個理由是:PHP需要支持一項她還未支持的技術。這通常包括包裹一些現成的C函數庫,以便提供PHP介面。例如,如果一個叫FooBase的資料庫已推出市場,你需要建立一個PHP擴展幫助你從PHP里調用FooBase的C函數庫。這個工作可能僅由一個人完成,然後被整個PHP社區共享(如果你願意的話)。第二個不是很普遍的理由是:你需要從性能或功能的原因考慮來編寫一些商業邏輯。
如果以上的兩個理由都和你沒什麼關系,同時你感覺自己沒有冒險精神,那麼你可以跳過本章。
本章教你如何編寫相對簡單的PHP擴展,使用一部分擴展API函數。對於大多數打算開發自定義PHP擴展開發者而言,它含概了足夠的資料。學習一門編程課程的最好方法之一就是動手做一些極其簡單的例子,這些例子正是本章的線索。一旦你明白了基礎的東西,你就可以在互聯網上通過閱讀文擋、原代碼或參加郵件列表新聞組討論來豐富自己。因此,本章集中在讓你如何開始的話題。在UNIX下一個叫ext_skel的腳本被用於建立擴展的骨架,骨架信息從一個描述擴展介面的定義文件中取得。因此你需要利用UNIX來建立一個骨架。Windows開發者可以使用Windows ext_skel_win32.php代替ext_skel。
然而,本章關於用你開發的擴展編譯PHP的指導僅涉及UNIX編譯系統。本章中所有的對API的解釋與UNIX和Windows下開發的擴展都有聯系。
㈥ php imap擴展作用是什麼
它的主要作用是郵件客戶端(例如MS Outlook Express)可以通過這種協議從郵件伺服器上獲取郵件的信息
㈦ 如何擴展PHP的IMAP模塊
如果對php進行模塊擴展,重新編譯PHP,這個過程比較痛苦,我的方法都是採用編譯模塊為*.so的方式,簡單,方便,不用去其他地方找模塊源碼包,php源碼自帶了。
1、進入安裝目錄
cd /path/ext/imap
/usr/local/webserver/php/bin/phpize
./configure --with-php-config=/usr/local/webserver/php/bin/php-config
就是到這步報錯了,如果你碰到這樣的錯誤:
This c-client library is built with Kerberos support.
Add --with-kerberos to your configure line. Check config.log for details
utf8_mime2text() has new signature
以上2個錯誤都是由於缺少 libc-client-* 軟體包引起,由於我是Centos系統,就直接yum升級吧
yum -y install libc-client-*
安裝完畢後,再次編譯,
./configure --with-php-config=/usr/local/webserver/php/bin/php-config
這次的錯誤不一樣,如下:
configure: error: Kerberos libraries not found.
Check the path given to --with-kerberos (if no path is given, searches in /usr/kerberos, /usr/local and /usr )
既然提示少參數,就加上該參數吧,
./configure --with-php-config=/usr/local/webserver/php/bin/php-config --with-kerberos=/usr
注意:這里有3個路徑可以選擇,於是就一個一個試一下,很幸運的是前面2個都不能編譯通過,只有 --with-kerberos=/usr 可以,但是還是有報錯,如下:
This c-client library is built with SSL support
看來離希望越來越近了,於是就加上 --with-imap-ssl=/usr 參數,終於編譯通過了,真不容易。
最後完整的編譯 imap 模塊參數如下:
./configure --with-php-config=/usr/local/webserver/php/bin/php-config --with-kerberos=/usr --with-imap-ssl=/usr
make
make install
㈧ PHP伺服器發送不了SMTP郵件怎麼辦
開啟php配置文件的兩個擴展:extension=php_sockets.dll和extension=php_openssl.dll,將前面的兩個分號去掉就行。 這兩個函數呢 然後重啟服務
詳細你可以去後盾人看看,這些都是後盾人裡面的,哪裡有詳細的視頻教學都是高質量,我自己就是在裡面學的。
㈨ 如何使用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擴展中的seaslog怎麼應用郵件服務
$peclinstallseaslog
seaslog.ini的配置
;=seaslog.soseaslog.default_basepath=/log/seaslog-test;默認log根目錄seaslog.default_logger=default;默認logger目錄seaslog.disting_type=1;是否以type分文件1是0否(默認)seaslog.disting_by_hour=1;是否每小時劃分一個文件1是0否(默認)seaslog.use_buffer=1;是否啟用buffer1是0否(默認)seaslog.buffer_size=100;buffer中緩沖數量默認0(不使用buffer_size)seaslog.level=0;記錄日誌級別默認0(所有日誌)
seaslog.disting_type=1開啟以type分文件,即log文件區分infowarnerro
seaslog.disting_by_hour=1開啟每小時劃分一個文件
seaslog.use_buffer=1開啟buffer。默認關閉。當開啟此項時,日誌預存於內存,當請求結束時(或異常退出時)一次寫入文件。
seaslog.buffer_size=100設置緩沖數量為100.默認為0,即無緩沖數量限制.當buffer_size大於0時,緩沖量達到該值則寫一次文件.
seaslog.level=3記錄的日誌級別.默認為0,即所有日誌均記錄。當level為1時,關注debug以上級別(包括debug),以此類推。level大於8時,所有日誌均不記錄。
默認常量有哪些
遵循PSR-3標准,SeasLog共將日誌分成8個級別
●SEASLOG_DEBUG"debug"
●SEASLOG_INFO"info"
●SEASLOG_NOTICE"notice"
●SEASLOG_WARNING"warning"
●SEASLOG_ERROR"error"
●SEASLOG_CRITICAL"critical"
●SEASLOG_ALERT"alert"
●SEASLOG_EMERGENCY"emergency"