【发布时间】:2015-09-02 16:48:06
【问题描述】:
我正在使用电子邮件模板进行简单的 PHP 表单验证。我有一个名为“index.html”的简单表单,并有提交按钮,表单方法为“post”,动作为“sendmail.php”。在我的 sendmail.php 中,有 smtp-mailer.php,其电子邮件模板称为“email-template.html”。我如何通过 sendmail.php 将变量从 index.html 传递到 mail-template.php... 明白我的意思吗???我知道使用 SESSION。但我不知道我应该在哪里调用它以及如何获取它???有什么想法...???
index.html
<form method="post" action="sendemail.php">
Email: <input name="email" id="email" type="text" /><br />
Message:<br />
<textarea name="message" id="message" rows="15" cols="40"></textarea><br />
<input type="submit" value="Submit" />
</form>
sendmail.php
<?php
include "class.smtp.php";
include "class.phpmailer.php";
session_start();
$email = $_REQUEST['email'] ;
$message = $_REQUEST['message'] ;
$_SESSION['message'] = $message;
$Body = file_get_contents('email-template.php');
...
...
?>
email-template.php(将其发送到不在浏览器中的电子邮件)
<table border="1">
<tr>
<td colspan="2">
<h3>
<?php
session_start();
$message = $_SESSION['message'];
echo "Your registration is: ".$message.".";
?>
</h3>
</td>
</tr>
</table>
更新:我做了同样的事...但没有回应...我错过了 sendmail.php 中的某些内容
【问题讨论】:
-
您不能在 HTML 文件中编写 PHP 代码。
-
除非您已指示 Apache 将
.html文件视为 PHP,否则您需要将 email-template.html 重命名为 email-template.php - 该文件将无法正确解析跨度> -
@MihirBhatt “你不能在 HTML 文件中编写 PHP 代码。” - 不完全正确。见我上面的评论^
-
查看我上面的更新:(
-
将错误报告添加到文件顶部,紧跟在打开 PHP 标记之后,例如
<?php error_reporting(E_ALL); ini_set('display_errors', 1);,然后是其余代码,看看它是否产生任何结果。
标签: php html session phpmailer