我正在创建一个发送存储在数据库中的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函数来处理我想要实现的目标
有人可以建议我应该如何实现我想要做的事情