我有一个表单,您可以向某人发送电子邮件,如果我重新加载页面,它会发送一封电子邮件。我怎么做它所以不这样做?一个论坛说它改为GET,但也没有用。邮件功能没有显示。
<form action="index.php" method="GET">
<textarea name="comment" cols="16.5" rows="5" style="resize: none;" maxlength="240"> </textarea>
<input type="submit" value="Send Comment" />
<?php
if (isset($_GET['comment'])) {
$com = mysql_real_escape_string($_GET['comment']);
if (!empty($com)) {
if (strlen($com) <= 240 && strlen($com) >= 5) { $mail = mail('__________', 'Comments', $com);
}
}
}
?>
</form>
答案 0 :(得分:2)
将带有POST的表单发送到另一个页面:说upload.php,然后在upload.php中,在检查表单后添加此代码:
header( 'Location: form_page.php' );
这样就可以重新加载表单页面而不会出现此问题。
答案 1 :(得分:0)
在链接(GET
)中添加sent
参数(例如:index.php
),并在发送邮件前检查是否未设置。
<form action="index.php?sent=true" method="GET">
<textarea name="comment" cols="16.5" rows="5" style="resize: none;" maxlength="240"></textarea>
<input type="submit" value="Send Comment" />
<?php
if (!isset($_GET['sent'])) {
// Your code for sending the mail here...
}
?>
</form>