2012-02-24 39 views
6

Đây là tập lệnh của tôi để gửi thư html.But sau khi thực thi tập lệnh này, tôi không nhận được thư. Tôi không biết cách đặt tên người dùng và mật khẩu bằng cách sử dụng ini_set (" SMTP "," smtp.xyz.com ") ;? Có cách nào đơn giản để đặt SMTP mà không sử dụng bất kỳ tệp thư viện bên ngoài nào không ?.Cách đặt tên người dùng và mật khẩu smtp bằng cách sử dụng ini_set

$name=$_POST['name']; 
$email=$_POST['email']; 
$mobile=$_POST['mobile']; 
$messege="Dear Webmaster,<br /> An user sent query.<br /> Query: <br/> ".$_POST['messege']."<br /><br /><br /> <b>User Contact Detail:</b><br />Name:".$name."<br/> Email:".$email."<br />Mobile:".$mobile; 

$to = '[email protected]'; 
$subject = 'xx'; 

$headers = "From: [email protected]\r\n" . 
'X-Mailer: PHP/' . phpversion() . "\r\n" . 
"MIME-Version: 1.0\r\n" . 
"Content-Type: text/html; charset=utf-8\r\n" . 
"Content-Transfer-Encoding: 8bit\r\n\r\n"; 

ini_set("SMTP","smtp.xyz.com"); 
ini_set("smtp_port","25"); 
ini_set("sendmail_from","[email protected]"); 
mail($to, $subject, $message, $headers); 
+3

Xem ở đây: http://stackoverflow.com/questions/112190/php-ini-smtp-how-do-you-pass-username-password –

+0

Bạn cũng có thể xem xét sử dụng một thư viện mà đã thực hiện công việc khó khăn của việc trừu tượng hóa sự phức tạp của việc gửi email đi (http://swiftmailer.org/) – F21

+0

Tôi đang sử dụng XAMPP trên hệ điều hành Linux, vì vậy kịch bản dưới đây sẽ hoạt động? SMTP = mail.yourserver.com smtp_port = 25 auth_username = smtp-username auth_password = smtp-password sendmail_from = [email protected] – Pank

Trả lời

4

Như bạn có thể đọc in the PHP manual, chức năng SMTP cho PHP chỉ khả dụng trên Windows và nó chỉ có chức năng rất cơ bản. Nếu bạn cần sử dụng nó trên Linux và/hoặc cần xác thực tên người dùng và mật khẩu, SMTPS, v.v. bạn sẽ cần sử dụng các thư viện như SwiftMailer, PHP Mailer, v.v. hoặc bạn cần thiết lập máy chủ SMTP bên ngoài trên máy chủ của riêng bạn như Exim. Tuy nhiên, bạn không nên cố gắng thiết lập máy chủ SMTP trừ khi bạn gặp phải vấn đề như vậy hoặc bạn sẽ làm cho máy chủ của bạn trở thành tổ cho những người gửi thư rác trong vài ngày tới.

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