PHP mail()发送2个副本

理查德·米森奇克(RichardMišenčík)

我的联系表存在此问题。当我提交表格时,我会在框中收到两封相同的电子邮件。

我使用JS检查表单中的错误,然后使用简单的PHP mail()函数发送电子邮件。

这是PHP代码:

<?php

$from = Trim(stripslashes($_POST['email']));
$to = "[email protected]";

$subject = "Contact Form";
$name = Trim(stripslashes($_POST['name']));
$email = Trim(stripslashes($_POST['email']));
$number = Trim(stripslashes($_POST['number']));
$message = Trim(stripslashes($_POST['message']));

    $body = "";
    $body .= "Name: ";
    $body .= $name;
    $body .= "\n\n";
    $body .= "E-mail: ";
    $body .= $email;
    $body .= "\n\n";
    $body .= "Telephone Number: ";
    $body .= $number;
    $body .= "\n\n";
    $body .= "Message: ";
    $body .= $message;
    $body .= "\n\n";

    $success = mail($to, $subject, $body, "From: <$from>" . "\r\n" . "Reply-to: <$from>" . "\r\n" . "Content-type: text; charset=utf-8");

?>

这是JS:

$(".submit").click(function() {
        var name = $("input[name=name]").val();
        var email = $("input[name=email]").val();
        var number = $("input[name=number]").val();
        var message = $("textarea[name=message]").val();

        if (defaults['name'] == name || name == "") {
            $(".error").text("Please enter your name!");
            return false;

        } else if (defaults['email'] == email || email == "") {
            $(".error").text("Please enter your email!");
            return false;

        } else if (defaults['number'] == number || number == "") {
            $(".error").text("Please enter your number!");
            return false;

        } else if (defaults['message'] == message || message == "") {
            $(".error").text("Plese enter your message!");
            return false;
        }

        var dataString = 'name=' + name + '&email=' + email + '&number=' + number + '&message=' + message;
        $(".error").text("Please wait...").hide().fadeIn("fast");

        $.ajax({
            type: "POST",
            url: "contact.php",
            data: dataString,
            success: function() {
                $('#form form').html("");
                $('#form form').append("<div id='success'>Your message has been sent! Thank you</div>");
            }
        });

        return false;
    });

这是HTML表单:

<form id="contact" method="post" action="#">

<label for="name">Name:</label>
<input type="text" name="name" required tabindex="1">

<label for="email">Email adress:</label>
<input type="text" name="email" required tabindex="2">

<label for="number">Tel. number:</label>
<input type="text" name="number" tabindex="3">

<label for="message">Your message:</label>
<textarea name="message" rows="10" cols="70" required tabindex="4"></textarea>

<input type="checkbox" id="terms" name="terms" value="terms">I agree to the <a href="#">terms</a>

<input type="submit" name="submit" class="submit more-info" tabindex="5" value="Send">

<span class="error"></span>

</form>

我在所有联系表格中都使用了相同的代码,并且效果很好。可能是托管/服务器相关的问题吗?

兹拉拉尼

取代您的点击事件

$(".submit").click(function() { 

$('.submit').unbind('click').click(function() {

码。

我可以假设您的click事件绑定了两次,可能是由于代码中的很多混乱

在click event函数的末尾也使用此行

$('.submit').unbind('click').click(function() {

    // your stuff

    event.stopImmediatePropagation(); // as long as not bubbling up the DOM is ok?
});

供参考,请查看链接:https : //forum.jquery.com/topic/jquery-executes-twice-after-ajax

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

无法发送php mail()

来自分类Dev

无法发送php mail()

来自分类Dev

php mail()发送短信

来自分类Dev

PHP仅在页面中发送一个mail()

来自分类Dev

PHP在消息副本中发送标头

来自分类Dev

PHP:mail()-发送多个主题

来自分类Dev

PHP mail()未发送邮件

来自分类Dev

PHP mail()未发送(Hostinger)

来自分类Dev

PHP MAIL:我的一个变量发送一个“假”值

来自分类Dev

使用php mail()发送.docx问题

来自分类Dev

PHP mail()函数...发送空消息

来自分类Dev

使用php mail()函数发送链接

来自分类Dev

PHP mail()函数...发送空消息

来自分类Dev

无法使用mail()php发送邮件?

来自分类Dev

无法使用php mail()函数发送邮件

来自分类Dev

无法使用 php mail() angular 发送邮件

来自分类Dev

PHP mail()发送2封电子邮件,而不是1封

来自分类Dev

PHP不会使用mail.php发送邮件

来自分类Dev

PHP mail()函数返回true,但不发送邮件

来自分类Dev

php mail()标头可阻止电子邮件发送

来自分类Dev

PHP'mail()'函数不发送电子邮件

来自分类Dev

PHP Mail()使用表从数据库发送数据

来自分类Dev

PHP Pear Mail发送纯文本而不是HTML格式

来自分类Dev

PHP @mail textarea $ message没有被发送

来自分类Dev

PHP mail()仅发送给单个收件人

来自分类Dev

PHP mail()发送错误但未报告错误

来自分类Dev

使用php mail()发送.docx时出现问题

来自分类Dev

从PHP Mail功能发送HTML电子邮件

来自分类Dev

PHP Mail()无法发送带有附件的电子邮件