2008-08-30 20 views
11

PHP webapp'ımda, bazı hatalar oluştuğunda e-posta yoluyla bilgilendirilmek istiyorum. Bunları göndermek için Gmail hesabımı kullanmak istiyorum. Bu nasıl yapılabilir?PHP postasını kullanarak Gmail

cevap

8

Gmail'in SMTP sunucusu çok özel bir yapılandırma gerektirir. Gmail help itibaren

: Muhtemelen Pear::Mail veya PHPMailer bu ayarları ayarlayabilirsiniz

Outgoing Mail (SMTP) Server (requires TLS) 
- smtp.gmail.com 
- Use Authentication: Yes 
- Use STARTTLS: Yes (some clients call this SSL) 
- Port: 465 or 587 
Account Name: your full email address (including @gmail.com) 
Email Address: your email address ([email protected]) 
Password:  your Gmail password 

. Daha fazla bilgi için belgelerine bakın.

4

Sen den $ içindir değer verdiklerini rağmen Gmail'in SMTP sunucusu Gmail'in SMTP sunucusunu kullanarak e-posta gönderirken zaman Gmail adresinden geldi gibi, bu görüneceğini

Not ile PEAR'ın posta işlevini kullanabilirsiniz.

(About.com Programming Tips alınan aşağıdaki kod)

<?php 
require_once "Mail.php"; 

$from = "Sandra Sender <[email protected]>"; 
$to = "Ramona Recipient <[email protected]>"; 
$subject = "Hi!"; 
$body = "Hi,\n\nHow are you?"; 

// stick your GMAIL SMTP info here! ------------------------------ 
$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>Message successfully sent!</p>"); 
} 
?> 
İlgili konular