Gửi mail trong PHP
Hầu hết các website bạn thường thấy có trang contact cho phép người dùng điền thông tin và gửi mail đi. Bài viết này mình sẽ hướng dẫn các bạn gửi mail trong PHP với hàm mail() .
Tạo form gửi mail trong PHP
Tạo file contact.php và thiết kế form điền thông tìn đơn giản như sau :
<form method="post" action="contact.php"> Email: <input name="email" type="text"><br> Message:<br> <textarea name="message" rows="15" cols="40"></textarea><br> <input name="btn_submit" type="submit"> </form>
Form trên bao gồm một field email để người dùng nhập địa chỉ email của họ và field message để họ nhập tin nhắn cần gửi.
Thực thi hàm gửi mail trong PHP
Tiếp đến, trong trang contact.php chúng ta sẽ thêm đoạn code sau để thực hiện việc gửi mail khi người dùng ấn nút submit:
<?php
if(isset($_POST['btn_submit'])){
$to = "you@yoursite.com";
$subject = "Contact Us";
$email = $_REQUEST['email'] ;
$message = $_REQUEST['message'] ;
$headers = "From: $email"; $sent = mail($to, $subject, $message, $headers) ;
if($sent) {
print "Gửi mail thành công";
} else {
print "Có lỗi khi gửi mail";
}
}
?>
Giải thích về đoạn code trên :
- $to : Địa chỉ email mà tin nhắn của người dùng sẽ được chuyển đến.
- $subject : Tiêu đề email mà bạn sẽ nhận được
- $email : Email của người dùng nhập trên form
- $message : Tin nhắn của người dùng
- $headers : Thông tin header của email
- $sent : Dùng hàm mail() của PHP, gắn các tham số đã tạo và thực thi việc gửi mail đi
Tổng kết: Mục đích của bài viết chia sẽ cho các bạn cách tạo form và gửi mail trong PHP bằng hàm mail() . Đây là cách gửi mail đơn giản, dành cho các bạn đang tìm hiểu về PHP hoặc làm các hệ thống nhỏ, đối với các hệ thống lớn thì sẽ có những cách gửi mail khác phù hợp. Chúc các bạn học tốt !
Xem thêm cách gửi mail trong PHP bằng SMTP
Nguồn : kungfuphp.com


Ad cho hỏi nếu mình tạo 1 form đăng kí thành viên. Sử dụng script để bắt lỗi.
Và sau khi ok thì submit thành công
Vậy nếu submit thành công vào database rồi. và nhân tiện gửi thông tin đó vào Mail thì phải làm thế nào
sau khi gửi thông tin vào database thì e viết luôn hàm gửi email xử lý sau đó luôn, cách gửi email trong php thì a có viết hướng dẫn mấy bài, e tìm trên thanh tìm kiếm bên phải là sẽ thấy
Anh giúp em fix lỗi này với ạ!
Warning: mail(): “sendmail_from” not set in php.ini or custom “From:” header missing in C:\xampp\htdocs\TAIDAM\admin\pages\lien-he-view.php on line 190
code:
Gửi từ Email
Email người nhận
<input name="email_nhan" class="form-control" value="” type=”text” readonly=””>
Tiêu đề email
Nội dung mail
CKEDITOR.replace(‘noidung_mail’);
Lưu lại
Reset
php:
sao mình làm như thế mà nó bảo
Notice: Undefined index: email in C:\xampp\htdocs\theheirs\contact.php on line 4
Notice: Undefined index: message in C:\xampp\htdocs\theheirs\contact.php on line 5
Có lỗi khi gửi mail
đã cập nhật lại code, bạn check lại nhé
mình kiểm tra đúng từng câu chữ một mà khi nhúng php vào html riêng thì sau khi nhấn submit từ file html nó có tải trang html/php nhưng không có gì xảy ra.
bạn cần upload đoạn code này lên server có hỗ trợ gửi email nhé. Nếu muốn gửi ở localhost thì bạn cần phải sử dụng 1 thứ viện khác gọi là phpmailer và cấu hình smtp google
https://kungfuphp.com/php-co-ban/gui-email-trong-php-su-dung-google-smtp.html
sao mình làm như vậy,đã nhận dc thông báo gửi mail thành công nhưng sao vào mail không thấy bạn nhỉ..có liên quan gì đến SMTP không bạn..mong bạn trả lời sớm..mail mình test là gmail.
bạn cần upload đoạn code này lên server có hỗ trợ gửi email nhé. Nếu muốn gửi ở localhost thì bạn cần phải sử dụng 1 thứ viện khác gọi là phpmailer và cấu hình smtp google
https://kungfuphp.com/php-co-ban/gui-email-trong-php-su-dung-google-smtp.html
https://kungfuphp.com/php-co-ban/gui-email-trong-php-su-dung-google-smtp.html