วันอาทิตย์ที่ 21 พฤษภาคม พ.ศ. 2560

บริการส่ง mail ด้วย php

บริการส่ง mail ด้วย php
: เพื่อให้ web server ที่เปิดบริการ SMTP (/usr/sbin/sendmail) ถูกเรียกใช้โดย php สำหรับส่ง mail


บริการนี้เปิดให้ทดสอบว่าส่งถึงท่านไหม แต่อาจใช้ไม่ได้ทุกเครือข่าย เพราะกำหนด RELAY ให้เฉพาะบางเครือข่ายเท่านั้น แต่ถ้า copy source code ไปใช้ก็น่าจะใช้ได้เลย โดยโปรแกรมตัวอย่างได้มีการตรวจสอบอะไรนิดหน่อย ซึ่งอาจนำไปประยุกต์ใช้งานสำหรับริการต่าง ๆ ได้ง่ายขึ้น เช่น contact us หรือ e-commerce เป็นต้น โปรแกรมนี้ได้ทดสอบแล้วที่ http://www.isinthai.com/~php/mail.htm และ http://lampang.thcity.com/mail.htm
ข้อควรทราบ : โปรแกรมนี้ไม่ได้ตรวจสอบอะไรมากมาย โดยแบ่งโปรแกรมออกเป็น 2 ส่วน เพื่อให้ง่ายสำหรับผมในการอธิบาย ว่า ส่วนที่ 1 ใช้รับค่าจากผู้ใช้ ส่วนที่ 2 ใช้ส่ง e-mail โดยตรง แต่การจะส่ง mail ได้ เครื่องที่ท่านนำโปรแกรมทั้ง 2 นี้ไปวางต้องมีคุณสมบัติ 2 ประการ 1. ต้องเป็น web server ที่บริการ php 2. ต้องให้บริการ smtp โดยเปิด relay ให้กับผู้ใช้เข้ามาใช้ได้
    Source code : mail.htm
    <body>
    <form action=mail.php method=get>
    <input name=refer type=hidden value="http://www.isinthai.com/~php/mail.htm">
    From : <input name=from value="saleman@oho.com" size=30><br>
    To : <input name=to value="burin@yonok.ac.th" size=30><br>
    Subject : <input name=subject value="test sendmail by isinthai.com" size=50><br>
    <textarea name=message rows=5 cols=80>
    Test form isinthai.com/~php/mail.htm
    </textarea><br>
    <input type=submit value=send>
    </form>
    </body>
    Source code : mail.php : สำหรับรับข้อมูลเพื่อส่ง mail ออกไป (ทำหน้าที่ส่ง e-mail โดยตรง)
    <body>
    <font color=blue>Send mail : </font><font color=red>
    <?
      $lf = chr(13). chr(10);
      $msg = $_GET['message'] . $lf ."IP address: " . $_SERVER["REMOTE_ADDR"];
      $msg = $msg . $lf ."Service by: http://www.isinthai.com/~php/mail.htm";  
      // mail ("burin@yonok.ac.th","your order","want 100 car today","From: saleman@oho.com");
      if ($_GET['to'] <> "burin@yonok.ac.th" || $_GET['from'] <> "saleman@oho.com") {
        mail($_GET['to'],":: ".$_GET['subject'],$msg,"From : ".$_GET['from']);
        echo "ok";
      } else {
        echo "invalid";
      }
    ?>
    </font><br><a href=<? echo $_GET['refer']; ?>><? echo $_GET['refer']; ?></a>
    </body>
    
อีก code หนึ่ง /var/www/html/isinthai/sndform.php ที่ใช้งานอยู่จริง
    
    <?
    $mto = $_POST["mto"];
    $msubj = $_POST["msubj"];
    $mfrom = $_POST["mfrom"];
    $message = $_POST["message"];
    $redirect = $_POST["redirect"];
    if (empty($redirect)) { $redirect = "http://www.isinthai.com/isinthai/sndform.php"; }
    if (empty($mto) || empty($msubj) || empty($mfrom) || empty($message)) {
    echo "<body bgcolor=#ffffdd><font face='courier new'>";
    echo "<form action=sndform.php method=post>";
    echo ".... To : <select name=mto size=3>";
    echo "<option value=nirund@yonok.ac.th selected>ดร.นิรันดร์ จิวะสันติการ";
    echo "<option value=atichart@yonok.ac.th>อติชาต หาญชาญชัย";
    echo "<option value=burin@yonok.ac.th>ผู้ดูแลเครือข่าย, HW, SW, ฐานข้อมูล";
    echo "</select><br>.. From : <input name=mfrom size=30> EX. yourname@hotmail.com<br>";
    echo "Subject : <input name=msubj size=50> EX. Why the name is YONOK?<br>";
    echo "Messages: <textarea name=message rows=10 cols=80>";
    echo "</textarea> <input type=submit value=Send_mail><br>";
    echo "<input name=redirect type=hidden value=http://www.isinthai.com/isinthai/sndform.php>";
    echo "</form>";
    $message = "hi\nthis is test\nthis is line.";
    $mto = "burin@yonok.ac.th";
    $msubj = "the subject";
    $mfrom = "burin@thaiall.com";
    } else {
    $message=$message."\n\nService from http://".$_SERVER["HTTP_HOST"].$_SERVER["SCRIPT_NAME"];
    $message=$message."\nScript developer by webmaster@yonok.ac.th";
    $message=$message."\nIP address : ".$_SERVER["REMOTE_ADDR"];
    $msubj = "Subject_".$msubj;
    $txtfrom = "From: ".$mfrom."\nX-Mailer: PHP/" . phpversion();
    mail($mto, $msubj, $message, $txtfrom );
    echo "<html><head><meta http-equiv=Refresh CONTENT='50; URL=$redirect'>";
    echo "</head><body><font face='courier new'>";
    echo "Your message sending [ <b>completely</b> ]<hr color=red><pre>";
    echo "From    : $mfrom \n";
    echo "To      : $mto \n";
    echo "Subject : $msubj \n";
    echo "Message : $message</pre>";
    }
    ?>
    

ไม่มีความคิดเห็น:

แสดงความคิดเห็น

Set MongoDB in the windows path environment

  Let’s set MongoDB in the windows environment in just a few steps. Step 1: First download a suitable MongoDB version according to your mach...