作者vrscdx (史密提威威杰格曼杰森)
看板PHP
标题[请益] 利用 phpmailer 发 Gmail
时间Sun Feb 24 00:44:35 2013
各位好,我知道这方面的相关教学在网路上跟版上都有。
可是不知为何这之间利用下班和放假时间,陆陆续续试了快一个月仍无法成功寄出。
这邮件功能主要是需要用在 mantisBT 上面,但由於程式和php方面不太熟
所以想和各位高手请益并附上网路收集的资料和自己的设定方式,
希望也能帮助日後有遇到相同问题的版友参考。
使用软体:
- AppServ 2.5.10
- Instant Mantis 1.1.1 (apache2, mysql-4.1.16-win32, php-4.4.2-win32)
(由於必须使用这个软体,若升级php会造成一些程式错误)
一、想先确定 Gmail 现在 SMTP 是否仍可透过 phpmailer 使用??
Google 相关设定页面:
http://support.google.com/mail/bin/answer.py?hl=zh-Hant&answer=13287
二、PHP 设定
A. 复制 ssleay32.dll 和 libeay32.dll 到 C:\Windows\System32\ (for SSL)
B. php.ini 中启用 extension=php_openssl.dll (去掉前面分号)
C. php.ini 中 [mail function] 加入:
smtp = smtp.gmail.com
smtp_port = 465
sendmail_from =
[email protected]
D. config_inc.php 不确定要不要也加入 Mail settings,感觉没有差别
三、PHPMailer 2.0.4
A. 复制 class.phpmailer.php, class.smtp.php, contents.html 和 language
资料夹到 C:\AppServ\www\root\mantis\
B. 建立一个测试网页 ex: test_gmail.php (PHPMailer 中的 example 有)
<< 在这边想问个问题,是不是透过这个测试网页就可以将所有设定变数
都代入 class.phpmailer.php 和 class.smtp.php 里??
(虽然我也是试过全部设固定值了) >>
我遇到过很多种错误讯息... 因为我会尝试用不同的测试网页
目前使用 test_gmail.php 这个跑完测试网页会出现下面问题
如果加注解 bypass 後会跑很久之後出现整个空白的网页。
Fatal error: Call to undefined method PHPMailer::getFile()
in C:\AppServ\www\root\mantis\test_gmail.php on line 10
Line 10 内容: $body = $mail->getFile('contents.html');
contents.html 这个档案我在步骤 A 有丢到同一个资料夹底下
可是那个 getFile() 是要去哪 define??
不会上传档案,我该整个贴上来吗... Qrz
有请各位大大不吝指导,感谢!!
p.s: 第一次在 php 版发文,若有什麽不妥或叙述不够详尽之处
烦请告知,谢谢!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.233.145.37
1F:→ Bambe:有 require_once 或 include_once phpmailer吗? 02/24 02:07
2F:→ Bambe:看起来你似乎没有把 phpmailer 载入到你的 php 档案里 02/24 02:08
3F:→ Bambe:所以在呼叫 getFile() 的时候找不到这个 function 02/24 02:09
4F:→ vrscdx:hi Bambe, 有喔 我开头有用 require_once 载入 phpmailer 02/24 22:35