PHP发送HTML电子邮件

时间:2014-01-20 15:26:28

标签: php html

我正在创建一个发送存储在数据库中的HTML电子邮件的应用。我使用PHP动态创建一个下拉菜单,其中包含数据库中可用的每个模板的名称。

html代码位于名为temp_html的列中并存储了原始html,我试图将此代码添加到选项值,如:

$form.= '<option id="'.$result['temp_id'].'"value="'.$result['temp_html'].'">"'.$result['temp_name'].'"</option>';

现在我需要将选定的选项值添加到$message变量中,该变量已添加到mail()函数中。

这就是我迷失的地方如何将选定的选项值添加到变量中,如果用户在发送之前更改了他们的想法和不同的模板,那么变量将使用新的html代码进行更新......?

html代码:

<html>
<head></head>
<body>
    <h2>Mail</h2>
    <form name="form1" method="post" action="mail.php">Send To:
        <input type="text" id="recipient" name="recipient">
        <br>Subject:
        <input type="text" id="subject" name="subject">
        <br />

            <?php require( 'mail.php'); echo LoadTemplate(); ?>
            <br>

            <input type="submit" value="Send" name='submit'>

    </form>
</body>
</html>

php代码:

  <?php
function LoadTemplate(){
    require('connect_db.php');
    $sql = "SELECT temp_id, temp_name, temp_html FROM templates WHERE temp_id=temp_id";
        $query = mysqli_query($con, $sql);
            $form='<select id="template" name="template">';
            $form.='<option value="">Select Template</option>';
                while($result = mysqli_fetch_assoc($query)){
                    $form.= '<option id="'.$result['temp_id'].'"value="'.$result['temp_html'].'">"'.$result['temp_name'].'"</option>';
                }

    $form.='</select>';
    return $form; 
}

if(isset($_REQUEST['submit'])){
    $to = $_POST['recipient'];
    $subject = $_POST['subject'];
    var_dump($message);
    //$message = file_get_contents($_REQUEST['template'], "r") or exit("Unable to open file");
    $headers = "Content-type: text/html\r\n";
    $mail_send = mail($to, $subject, $message, $headers);

    if($mail_send){
     echo 'Mail Send ';
     }else{
     echo 'Try Later';
     }
}
?>

我正在使用LoadTemplate函数来处理我想要实现的目标

有人可以建议我应该如何实现我想要做的事情

0 个答案:

没有答案