บทความนี้เป็นตัวอย่างโปรแกรมส่งอีเมลด้วยภาษา PHP โดยใช้คำสั่ง Mail กรณีนำโค้ดนี้ไปใช้งานต้องนำไปรันที่เครื่อง Server ที่มีการติดตั้ง Mail Server (ไม่สามารถรันบน localhost ปกติได้) โดยมีรายละเอียดการเขียนโปรแกรมดังนี้
ตัวอย่าง หน้าฟอร์มเขียนอีเมล
<form action="<?=$_SERVER['PHP_SELF'];?>" method="POST">
<input type="email" name="to" placeholder="อีเมลผู้รับ"><br/>
<input type="text" name="subject" placeholder="หัวข้อ"><br/>
<textarea name="message" placeholder="รายละเอียดอีเมล"></textarea><br/>
<input type="submit" value="ส่งเมล์">
</form>
โค้ดด้านบนมีการสร้างตัวแปร 3 ตัว คือ $to ทำหน้าที่เก็บอีเมลผู้รับ, $subject เก็บหัวข้ออีเมล และ $message เก็บรายละเอียดอีเมล
ตัวอย่าง โค้ด PHP ส่งอีเมล
isset( $_POST['to'] ) ? $to = $_POST['to'] : $to = "";
isset( $_POST['subject'] ) ? $subject = $_POST['subject'] : $subject = "";
isset( $_POST['message'] ) ? $message = $_POST['message'] : $message = "";
if( !empty( $to ) && !empty( $subject ) && !empty( $message ) ) {
$from = "support@yourdomain.com"; //แก้ไขเป็นอีเมลของโดเมน เช่น support@โดเมนของคุณ.com
$headers = 'From: '.$from.'' . "\r\n" .
'Content-type: text/html; charset=utf8' .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
}
โค้ดด้านบนมีการรับตัวแปรทั้ง 3 จากฟอร์ม HTML จากนั้นเช็คว่ามีค่าหรือไม่ กรณีถ้ามีค่าจึงนำตัวแปรทั้ง 3 มาส่งอีเมลด้วยคำสั่ง mail ก่อนนำโค้ดนี้ไปใช้งานให้แก้ไขค่าของตัวแปร $from เป็นอีเมลของโดเมนที่ทำหน้าที่ส่งอีเมล
ตัวอย่าง โปรแกรมแบบเต็ม
<form action="<?=$_SERVER['PHP_SELF'];?>" method="POST">
<input type="email" name="to" placeholder="อีเมลผู้รับ"><br/>
<input type="text" name="subject" placeholder="หัวข้อ"><br/>
<textarea name="message" placeholder="รายละเอียดอีเมล"></textarea><br/>
<input type="submit" value="ส่งเมล์">
</form>
<?php
isset( $_POST['to'] ) ? $to = $_POST['to'] : $to = "";
isset( $_POST['subject'] ) ? $subject = $_POST['subject'] : $subject = "";
isset( $_POST['message'] ) ? $message = $_POST['message'] : $message = "";
if( !empty( $to ) && !empty( $subject ) && !empty( $message ) ) {
$from = "support@yourdomain.com"; //แก้ไขเป็นอีเมลของโดเมน เช่น support@โดเมนของคุณ.com
$headers = 'From: '.$from.'' . "\r\n" .
'Content-type: text/html; charset=utf8' .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
}
?>