2011-02-10 54 views

Trả lời

18

Có, PHPMailer là một lựa chọn rất tốt. Ví dụ, nếu bạn muốn, bạn có thể sử dụng googles máy chủ SMTP miễn phí (nó giống như gửi từ tài khoản gmail của bạn.), Hoặc bạn chỉ có thể bỏ qua phần smtp và gửi nó như một cuộc gọi thư() điển hình, nhưng với tất cả các tiêu đề chính xác, vv Nó cung cấp nhiều e-mail, file đính kèm.

Cũng rất dễ thiết lập.

<?php 

$mail = new PHPMailer(true); 

//Send mail using gmail 
if($send_using_gmail){ 
    $mail->IsSMTP(); // telling the class to use SMTP 
    $mail->SMTPAuth = true; // enable SMTP authentication 
    $mail->SMTPSecure = "ssl"; // sets the prefix to the servier 
    $mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server 
    $mail->Port = 465; // set the SMTP port for the GMAIL server 
    $mail->Username = "[email protected]"; // GMAIL username 
    $mail->Password = "your-gmail-password"; // GMAIL password 
} 

//Typical mail data 
$mail->AddAddress($email, $name); 
$mail->SetFrom($email_from, $name_from); 
$mail->Subject = "My Subject"; 
$mail->Body = "Mail contents"; 

try{ 
    $mail->Send(); 
    echo "Success!"; 
} catch(Exception $e){ 
    //Something went bad 
    echo "Fail - " . $mail->ErrorInfo; 
} 

?> 
+0

Tôi đang sử dụng một cái gì đó như thế atm – dynamic

+0

Vì vậy ... điều này sử dụng SMTP và SSL? –

+0

@Sortofabeginner chỉ xem mã :) –

3

Nếu không có SMTP, bạn có thể sử dụng chức năng PHP mail: http://php.net/manual/en/function.mail.php

bool mail (string $ đến, chuỗi $ chủ đề, chuỗi $ message [, string $ additional_headers [, string $ additional_parameters]])

+2

Một mẹo: nhớ để xác nhận bất kỳ thông tin người dùng gửi trước khi đặt nó trong tiêu đề, cách mà họ không thể chèn thông tin của riêng họ vào các tiêu đề khi sử dụng 'mail'. –

1

Bạn có thể sử dụng phpmailer để gửi bằng cách sử dụng hàm php mail mặc định().

Tôi khuyên bạn không nên cố gắng thực hiện mọi việc theo cách thủ công bằng cách sử dụng hàm mail(), sử dụng phpmailer và định cấu hình để sử dụng thư().

Tôi muốn chỉ ra rằng mặc dù bạn không sử dụng kết nối SMTP để tự gửi thư, hàm mail() sẽ sử dụng kết nối SMTP hoặc chương trình sendmail của máy chủ để gửi email , do đó sẽ phải được cấu hình để nó hoạt động chính xác.

Các vấn đề liên quan