【问题标题】:Display die(); message on the same page as form显示模具();与表单在同一页面上的消息
【发布时间】:2012-09-14 10:03:15
【问题描述】:

请不要说我对 php 不太擅长,所以我们将不胜感激。

不管怎样,我有这个表格:

<form method="post" action="mail.php" id="contactform">
    <div class="stage cf">
        <input type="text" name="contactname" id="contactname" placeholder="Name" class="required" role="input" aria-required="true" />
    </div>
    <div class="stage cf">
        <input type="text" name="email" id="useremail" placeholder="Email" class="required email" role="input" aria-required="true" />
    </div>
    <div class="stage cf">
        <input type="text" name="subject" id="subject" placeholder="Subject" class="required" role="input" aria-required="true" />
    </div>
    <div class="stage cf">
        <textarea rows="5" name="message" id="message" placeholder="Message" class="required" role="textbox" aria-required="true"></textarea>
    </div>                                      
        <input type="submit" value="Send Message" name="submit" id="submitButton" title="SendMessage" />
    <div id="response"></div>
</form>

发送表单时,我想在同一页面上显示一条死消息。此时的消息显示在另一个页面上。

我的mail.php 文件的这一部分发送邮件:

//If there is no error, send the email
if(!isset($hasError)) {
    $emailTo = 'test@randommail.com'; //Put your own email address here
    $body = "Name: $name \n\nEmail: $email \n\nSubject: $subject \n\nComments:\n $comments";
    $headers = "From: $email";

    mail($emailTo, $subject, $body, $headers);
    $emailSent = true;

}
die("<span class='success'>Success! Your message has been sent.</span>");

这个 Ajax 应该可以解决问题:

submitHandler: function(form) {
    $("#send").attr("value", "Sending...");
    $(form).ajaxSubmit({
        success: function(responseText, statusText, xhr, $form) {
            $(form).slideUp("fast");
            $("#response").html(responseText).hide().slideDown("fast");
        }
    });
    return false;
}

【问题讨论】:

  • 如果 Ajax 有效,为什么不使用它?
  • 我认为您需要在脚本终止时使用error: 回调来获得响应。
  • @Hope4You,我在我的 .js 文件中提到了这个 AJAX 代码,但由于某种原因它不起作用 o.O?这就是我需要帮助的地方。

标签: php die


【解决方案1】:

die('string') 表示,停止运行并转储 'string' 它应该工作!

【讨论】:

  • die() 函数显示给它的字符串,但它显示在一个新页面上,我想在表单所在的页面上显示它。
猜你喜欢
  • 1970-01-01
  • 2018-03-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多