【问题标题】:Clear form after submit and success message提交和成功消息后清除表单
【发布时间】:2015-06-19 10:14:17
【问题描述】:

我制作了自己的联系表格,它正在发送邮件,但我希望在成功提交后清除它并显示成功发送的消息(弹出窗口可能很好)。这是我的代码,我不知道该怎么做,它运行了一些东西,但没有任何效果。

<form id="contact-form" class="wniosek" action="wyslijWniosek.php"  method="POST">
    <div class="col-sm-4">
        <label class="firma rel col-sm-12">
            <span class="inp">
                <input name="firma" type="text" placeholder="Nazwa Firmy" class="col-sm-12">
            </span>
        </label>
        </div>
        <div class="col-sm-4">
        <label class="name rel col-sm-12">
            <span class="inp">
                <input name="name" type="text" placeholder="Imię i nazwisko" class="col-sm-12">
            </span>
        </label>
        </div>
        <div class="col-sm-4">
        <label class="phone rel col-sm-12">
            <span class="inp">
                <input name="phone" type="text" placeholder="Telefon" class="col-sm-12">
            </span>
        </label>
        </div>
        <div class="col-sm-4">
        <label class="email rel col-sm-12">
            <span class="inp">
                <input name="email" type="text" placeholder="E-mail" class="col-sm-12">
            </span>
        </label>
        </div>
        <div class="col-sm-4">
        <label class="kwota rel col-sm-12">
            <span class="inp">
                <input name="kwota" type="text" placeholder="Prognozowana Kwota" class="col-sm-12">
            </span>
        </label>
        </div>
        <div class="col-sm-4">
        <label class="wnio col-sm-12">
                <select name="wnio" style="width:100%;"> 
                    <option value="Kredyt Firmowy">Kredyt Firmowy</option>
                    <option value="Kredyt Gotówkowy">Kredyt Gotówkowy</option>
                    <option value="Kredyt Obrotowy">Kredyt Obrotowy</option>
                    <option value="Pożyczka Hipoteczna">Pożyczka Hipoteczna</option>
                    <option value="Kredyt Hipoteczny">Kredyt Hipoteczny</option>
                    <option value="Kredyt Konsolidacyjny">Kredyt Konsolidacyjny</option>
                    <option value="Kredyt Inwestycyjny">Kredyt Inwestycyjny</option>
                    <option value="Kredyt Samochodowy">Kredyt Samochodowy</option>
                    <option value="Leasing">Leasing</option>
                </select>
        </label>
        </div>
        <div class="col-sm-12">
        <label class="message rel col-sm-12">
            <span class="text_a">
                <textarea name="message" class="col-sm-12" placeholder="Wiadomość" style="height:300px;"></textarea>
            </span>
        </label>
        </div>
        <div class="col-sm-4">
        <div class="buttons-wrapper"><input class="button2 btn btn-white" type="submit" value="Wyślij"><input class="button2 btn btn-white" type="reset" value="Wyczyść">
        </div>
    </div>
</form>

php:

<?php
$firma = $_POST['firma'];
$name = $_POST['name'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$wnio = $_POST['wnio'];
$kwota = $_POST['kwota'];
$message = $_POST['message'];
$formcontent=" Nazwa Firmy: $firma \n Imie i Nazwisko: $name \n Email: $email \n Telefon: $phone \n Wniosek: $wnio \n Prognozowana Kwota: $kwota \n Wiadomość: $message";
$recipient = "<mymailhere>";
$subject = "Formularz Kontaktowy";
$mailheader = "From: $email";
mail($recipient, $subject, $formcontent, $mailheader);
exit();//Remove this after debugging done
?>

【问题讨论】:

    标签: php html


    【解决方案1】:

    使用这个简单的代码

    mail($recipient, $subject, $formcontent, $mailheader);
    header("location:wniosek.php?form=success");
    

    在你的wniosek.php页面中使用这个代码来显示状态

    <?php if($_GET['form']=="success") { echo "Registered Successfully"; } ?>
    

    【讨论】:

    • 所以我应该制作一个 form.php 文件?我的联系表格在 wniosek.html 页面中
    • 现在我有类似的东西,但它的标题不起作用(“location:wniosek.html?form=success”);
    • 你怎么能在 html 文件中使用 php... 在 .php 文件中使用这个而不是 .html
    • 好的,现在我有了 wniosek.pgp(我有联系表格),在 send.php 中我添加了 header("location:wniosek.php?form=success");并在我的 wniosek.php 标题中添加:
    • 仍在发送消息,表单未清除,没有消息
    【解决方案2】:

    清除表单的快速解决方案是

    <form id="contact-form" class="wniosek" action="wyslijWniosek.php"  method="POST" onsubmit="this.submit(); this.reset(); return false;">
    

    编辑: 忽略第一个答案。删除action 属性并将其添加到页面底部

    <script>
    function submitForm() {
        $.ajax({type:'POST', url: 'wyslijWniosek.php', data:$('#contact-form').serialize(), success: function(response) {
            $('#contact-form').reset();
            alert("Success!");
        }});
    
        return false;
    }
    </script>
    

    【讨论】:

    • 它正在清理表单并发送消息,但它正在发送一个空消息(看起来它在重置后发送)
    • 我编辑了答案。现在表单在数据发送到 php 后被重置。如果数据无效,您可以在 php 中添加一些自定义消息并在消息中返回。使用 jquery 比使用传统的表单提交更好。
    • 它正在刷新(一秒钟我可以在电子邮件输入“电子邮件必须有效”下看到消息)并且消息未发送
    猜你喜欢
    • 1970-01-01
    • 2017-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-03
    • 2016-03-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多