Hướng dẫn Kiểm tra tính năng gửi mail trên Hosting

Thảo luận trong 'Tài liệu Hosting' bắt đầu bởi airhost.vn, 18/06/2018.

  1. airhost.vn

    airhost.vn Nhà Tài Trợ

    Tham gia:
    10/05/2017
    Bài viết:
    120
    Đã được thích:
    60
    Điểm thành tích:
    28
    Giới tính:
    Nam
    Nghề nghiệp:
    CEO
    Nơi ở:
    Bình Dương
    Web:
    Chào các bạn,

    Trong bài viết này mình sẽ hướng dẫn các bạn kiểm tra xem hosting của các bạn đã mở tính năng gửi mail mặc định và mở giao thức SMTP để gửi mail ra ngoài chưa.

    Kiểm tra hàm mail mặc định có được mở
    Để kiểm tra, chúng ta sẽ tạo một file email.php trên hosting và thêm vào các nội dung sau:

    • Tạo form gửi mail:
    Mã:
    <form method="post" action="email.php">
    Email: <input name="email" type="text"><br>
    Message:<br>
    <textarea name="message" rows="15" cols="40"></textarea><br>
    <input type='submit' name='ok'>
    </form>
    • Gọi hàm gửi mail:

    Mã:
    <?php
    if (isset($_POST['ok']))
    {
    $to = "quanglan@123host.vn";
    $subject = "Test mail() function default";
    $email = $_REQUEST['email'] ;
    $message = $_REQUEST['message'] ;
    $headers = "From: $email"; $sent = mail($to, $subject, $message, $headers) ;
    if($sent) {
    print "Gui mail thanh cong!";
    } else {
    print "Co loi khi gui mail";
    }
    }
    ?>
    1.jpg
    Lưu ý vào các ô tô đỏ ở hình trên.

    Đầu tiên nếu bạn tạo file email.php theo Kỹ thuật thì trong ô đỏ đầu tiên mình cũng để là “email.php“.

    Ở ô đỏ thứ 2: $to = “quanglan@123host.vn”; Bạn sẽ nhập địa chỉ email mà bạn muốn gửi mail test này đến.

    Nhấn Save Changes để hoàn tất.

    Truy cập đường dẫn đến file email.php

    2.jpg
    Ở ô Email, bạn nhập vào tên Email mà bạn muốn hiển thị cho người nhận biết.

    Nhấn vào “Gửi truy vấn” để gửi mail đi.

    Nếu thành công sẽ báo “Gui mail thanh cong!

    3.jpg

    Bạn đợi một lát và kiểm tra hộp thư.

    4.jpg
    Như vậy tức là hàm mail() mặc định trên hosting đang mở.

    Nếu khi bạn nhấn vào “Gửi Truy Vấn” ở bước trên mà gặp thông báo “Co loi khi gui mail!” thì có nghĩa là hàm mail() đang bị khóa, bạn có thể liên hệ nhà cung cấp hosting mở cho bạn nếu muốn.

    Kiểm tra hosting có đang mở SMTP để gửi mail

    Ở đây mình sẽ dùng thư viện PHPMailer và tài khoản Gmail để gửi mail thông qua SMTP.

    Các bạn có thể download thư viện PHPMailer về tại link:

    https://github.com/PHPMailer/PHPMailer

    Nhấn vào Clone or Download, nhấn tiếp Download ZIP.

    5.jpg

    Upload file này lên Hosting và giải nén ra.

    6.jpg

    Truy cập vào thư mục PHPMailer-master/examples, bạn sẽ thấy file gmail.phps. Ta sẽ đổi tên file này thành gmail.php. Sau đó mở file này lên.

    Bạn sẽ lưu ý các thông tin sau:

    $mail->Username = “<Your Gmail>”; Bạn lưu ý tài khoản Gmail này phải tắt chức năng xác thực 2 bướcbật tính năng Less Secure. Truy cập link này để Bật tính năng Less Secure:

    https://www.google.com/settings/security/lesssecureapps

    • $mail->Password = “<Your Gmail>”; Nhập vào mật khẩu của tài khoản Gmail mà bạn đã nhập ở trên.
    • $mail->addAddress(‘<Receiver>’, ‘Name Of Whom’); Nhập vào địa chỉ email mà bạn muốn gửi mail này tới để kiểm tra.
    Nhấn Save Changes để lưu lại.


    7.jpg
    Truy cập đường dẫn đến file gmail.php

    8.jpg
    Bạn sẽ thấy các dòng Client <–> Server, đó chỉ là những thông tin trao đổi giữa client và mail server, bạn không cần phải bận tâm. Chúng ta sẽ cuộn về cuối trang để xem kết quả.

    9.jpg
    Bạn sẽ thấy thông báo “Message sent!” nếu gửi mail thành công.

    Truy cập hộp thư để kiểm tra.

    10.jpg
    Vậy là đã gửi mail thành công rồi.

    Nếu bạn gặp thông báo “Mailer Error: ” và các thông điệp theo kèm. Hãy chắc chắn rằng bạn đã tắt xác thực 2 bước cho tài khoản Gmail và bật tính năng Less Secure.

    Nếu bạn đã làm đúng hết các bước mà vẫn lỗi thì hãy liên hệ ngay với nhà cung cấp dịch vụ để yêu cầu mở chức năng gửi mail qua SMTP.

    Cám ơn các bạn đã xem bài hướng dẫn và mong các bạn sẽ ủng hộ cho Airhost nhé!
     
    Bài viết mới

Chia sẻ trang này