sendmessage仅适用于一页

时间:2014-09-12 08:10:52

标签: php fancybox sendmessage

我有一种即将运行的测验,其中显示答案并应通过电子邮件提交。 该脚本使用sendmessage.php,它可以正常运行"回答一个"。所有其他答案,尽管页面完全相同(文本除外)不。

这是正确的页面" one":

<!doctype html>
<html lang="en">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <link rel="stylesheet" type="text/css" media="all" href="style.css">
  <link rel="stylesheet" type="text/css" media="all" href="fancybox/jquery.fancybox.css">
  <script type="text/javascript"     src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
  <script type="text/javascript" src="fancybox/jquery.fancybox.js?v=2.0.6"></script>
</head>

<body>
<H2><br />
</H2>
<div id="wrapper">
  <d>Der größte Fan</d><br> 
  <br>

<p>Du liebst alles, was mit Schönheit zu tun hat! 
Warum teilst du nicht deine Leidenschaft für Mary Kay® Produkte mit deiner Familie und deinen     Freunden? 
Du kannst nicht verbergen, wie du dich damit fühlst – gepflegt, selbstbewusst und schön!<br>
</div>
<div id="wrapper">

  Schick uns dein Ergebnis, und erhalte die Einladung zur Facebook-Gruppe!</p>

    <p><a class="modalbox" href="#inline">Ergebnis ans Mary Kay<sup>&reg;</sup> Büro schicken</a>    </p>
</div>

<!-- hidden inline form -->
<div id="inline">
    <h2>Schick uns dein Ergebnis</h2>

    <form id="contact" name="contact" action="#" method="post">
        <label for="cons">Deine Consultantnummer</label>
        <input type="cons" id="cons" name="cons" maxlength="8" class="txt"><br>
        <label for="name">Dein     Name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&    nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label>
        <input type="name" id="name" name="name" class="txt"><br>
        <label for="email">Deine     Email&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;     &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label>
        <input type="email" id="email" name="email" class="txt">
        <br>
        <label for="msg">Mein Ergebnis lautet:</label>
        <textarea id="msg" name="msg" class="txtarea" readonly>Der größte Fan. Du liebst alles,     was mit Schönheit zu tun hat! 
Warum teilst du nicht deine Leidenschaft für Mary Kay® Produkte mit deiner Familie und deinen     Freunden? 
Du kannst nicht verbergen, wie du dich damit fühlst – gepflegt, selbstbewusst und schön!     </textarea>

        <button id="send">Email abschicken</button>
    </form>
</div>

<!-- basic fancybox setup -->
<script type="text/javascript">
    function validateEmail(email) { 
        var reg = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]    {1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
        return reg.test(email);
    }

    $(document).ready(function() {
        $(".modalbox").fancybox();
        $("#contact").submit(function() { return false; });


        $("#send").on("click", function(){
            var emailval  = $("#email").val();
            var msgval    = $("#msg").val();
            var msglen    = msgval.length;
            var mailvalid = validateEmail(emailval);

            if(mailvalid == false) {
                $("#email").addClass("error");
            }
            else if(mailvalid == true){
                $("#email").removeClass("error");
            }

            if(msglen < 4) {
                $("#msg").addClass("error");
            }
            else if(msglen >= 4){
                $("#msg").removeClass("error");
            }

            if(mailvalid == true && msglen >= 4) {
                // if both validate we attempt to send the e-mail
                // first we hide the submit btn so the user doesnt click twice
                $("#send").replaceWith("<em>wird verschickt...</em>");

                $.ajax({
                    type: 'POST',
                    url: 'sendmessage.php',
                    data: $("#contact").serialize(),
                    success: function(data) {
                        if(data == "true") {
                            $("#contact").fadeOut("fast", function(){
                                $(this).before("<p><strong>Super! Deine Ergebnisse sind zu uns     unterwegs! Vielen Dank :)</strong></p>");
                                setTimeout("$.fancybox.close()", 5000);
                            });
                        }
                    }
                });
            }
        });
    });
</script>

</body>
</html>

sendmesaage如下:

<?php
$sendto   = "me@myaddress.com";
$username = $_POST['name'];
$usercons = $_POST['cons'];
$usermail = $_POST['email'];
$fromfield = "online_formular@myaddress.com";
$content  = nl2br($_POST['msg']);

$subject  = "Ein Quiz wurde ausgefüllt";
$headers  = "From: " . strip_tags($fromfield) . "\r\n";
$headers .= "Reply-To: ". strip_tags($usermail) . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html;charset=utf-8 \r\n";

$msg  = "<html><body style='font-family:Arial,sans-serif;'>";
$msg .= "<h2 style='font-weight:bold;border-bottom:1px dotted #ccc;'>Ein Quiz wurde ausgefüllt</h2>\r\n";
$msg .= "<p><strong>Absender:</strong> ".$username."</p>\r\n";
$msg .= "<p><strong>Cons.-Nr.:</strong> ".$usercons."</p>\r\n";
$msg .= "<p><strong>Email:</strong> ".$usermail."</p>\r\n";
$msg .= "<p><strong>Nachricht:</strong> ".$content."</p>\r\n";
$msg .= "</body></html>";


if(@mail($sendto, $subject, $msg, $headers)) {
    echo "true";
} else {
    echo "false";
}

?>

该组合有效 - 同一目录中的所有文件。 当我使用第二个答案(two.html)时 - 它没有做任何事情......它表明已发送,但它永远不会到达。

二:

<!doctype html>
<html lang="en">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <link rel="stylesheet" type="text/css" media="all" href="style.css">
  <link rel="stylesheet" type="text/css" media="all" href="fancybox/jquery.fancybox.css">
  <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
  <script type="text/javascript" src="fancybox/jquery.fancybox.js?v=2.0.6"></script>
</head>

<body>
<H2><br />
</H2>
<div id="wrapper">
  <d>Die Netzwerkerin</d><br> 
  <br>

<p>
Deine Freunde sind dir am wichtigsten. Deshalb ist für dich ein Geschäft perfekt, das es dir ermöglicht, mehr Zeit mit deinen Freundinnen zu verbringen und gleichzeitig neue Freundschaften aufzubauen. 
<br>
</div>
<div id="wrapper">

  Schick uns dein Ergebnis, und erhalte die Einladung zur Facebook-Gruppe!</p>

    <p><a class="modalbox" href="#inline">Ergebnis ans Mary Kay<sup>&reg;</sup> Büro schicken</a></p>
</div>

<!-- hidden inline form -->
<div id="inline">
    <h2>Schick uns dein Ergebnis</h2>

    <form id="contact" name="contact" action="#" method="post">
        <label for="cons">Deine Consultantnummer</label>
        <input type="cons" id="cons" name="cons" maxlength="8" class="txt"><br>
        <label for="name">Dein Name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label>
        <input type="name" id="name" name="name" class="txt"><br>
        <label for="email">Deine Email&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label>
        <input type="email" id="email" name="email" class="txt">
        <br>
        <label for="msg">Mein Ergebnis lautet:</label>
        <textarea id="msg" name="msg" class="txtarea" readonly>Die Netzwerkerin. Deine Freunde sind dir am wichtigsten. Deshalb ist für dich ein Geschäft perfekt, das es dir ermöglicht, mehr Zeit mit deinen Freundinnen zu verbringen und gleichzeitig neue Freundschaften aufzubauen.</textarea>

        <button id="send">Email abschicken</button>
    </form>
</div>

<!-- basic fancybox setup -->
<script type="text/javascript">
    function validateEmail(email) { 
        var reg = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
        return reg.test(email);
    }

    $(document).ready(function() {
        $(".modalbox").fancybox();
        $("#contact").submit(function() { return false; });


        $("#send").on("click", function(){
            var emailval  = $("#email").val();
            var msgval    = $("#msg").val();
            var msglen    = msgval.length;
            var mailvalid = validateEmail(emailval);

            if(mailvalid == false) {
                $("#email").addClass("error");
            }
            else if(mailvalid == true){
                $("#email").removeClass("error");
            }

            if(msglen < 4) {
                $("#msg").addClass("error");
            }
            else if(msglen >= 4){
                $("#msg").removeClass("error");
            }

            if(mailvalid == true && msglen >= 4) {
                // if both validate we attempt to send the e-mail
                // first we hide the submit btn so the user doesnt click twice
                $("#send").replaceWith("<em>wird verschickt...</em>");

                $.ajax({
                    type: 'POST',
                    url: 'sendmessage.php',
                    data: $("#contact").serialize(),
                    success: function(data) {
                        if(data == "true") {
                            $("#contact").fadeOut("fast", function(){
                                $(this).before("<p><strong>Super! Deine Ergebnisse sind zu uns unterwegs! Vielen Dank :)</strong></p>");
                                setTimeout("$.fancybox.close()", 5000);
                            });
                        }
                    }
                });
            }
        });
    });
</script>

</body>
</html>

如果有人有任何建议,那就太棒了! 提前致谢, 迪米特里

0 个答案:

没有答案