繁体   English   中英

发送 email 的警报消息未显示

[英]Alert message on sending email not showing up

在通过单击发送消息按钮发送 email 时,应显示一个警告框,但它既没有显示查询发送成功,也没有显示 email 未发送,我不知道我哪里出错了。 请帮我解决这个问题。 任何帮助都将是非常可观的。 我附上我的部分联系人。php 代码和我的邮件。php 代码。 谢谢你

联系方式。php

<form id="contact-form" method="POST" action="mail.php">
                    <div class="row">
                        <div class="col-md-4">
                            <div class="form-group">
                                <label>Name</label>
                                <input class="form-control" name="name" id="name" placeholder="" type="text" required>
                            </div>
                        </div>
                        <div class="col-md-4">
                            <div class="form-group">
                                <label>Email</label>
                                <input class="form-control" name="email" id="email" placeholder="" type="email" required>
                            </div>
                        </div>
                        <div class="col-md-4">
                            <div class="form-group">
                                <label>Subject</label>
                                <input class="form-control" name="subject" id="subject" placeholder="" required>
                            </div>
                        </div>
                    </div>
                    <div class="form-group">
                        <label>Message</label>
                        <textarea class="form-control" name="message" id="message" placeholder="" rows="10" required></textarea>
                    </div>
                    <div class="text-right"><br>
                    
                        <button class="btn btn-primary solid blank button"  id="btn" type="submit" value="submit" name="submit">Send Message</button>
                    
                    </div>
    
                </form>

mail.php

<?php
if (isset($_POST['submit'])){

$to = "contact@imatrixautomation.com";
$name = $_POST['name'];
$email = $_POST['email'];
$subject = $_POST['subject'];
$message = $_POST['message'];
$message .="\r\n from: $email";


if(mail ($to, $subject, $name,  $message)){
    echo "<script>alert('Enquiry sent successfully!');</script>";
   
}
    else
    {
    echo "<script>alert('Mail was not sent. Please try again later');</script>";
    }
}


header('Location: https://imatrixautomation.com/contact.php');
exit;

?>

在contact.php文件中

提交按钮缺少name="submit"

这一行应该是:

<button class="btn btn-primary solid blank button"  id="btn" type="submit" name="submit" value="submit">Send Message</button>
                

解释:目前

if (isset($_POST['submit'])){   

由于 POST['submit'] 为空,因此始终评估为 FALSE,因此它在 header() 处继续...

################

尝试将此代码作为 mail.php 并告诉我们会发生什么;-)

<?php
if (isset($_POST['submit'])){
    
    echo "submit is set to {$_POST['submit']} and now we send the email<br>";

$to = "contact@imatrixautomation.com"; 
$name = $_POST['name'];
$email = $_POST['email'];
$subject = $_POST['subject'];
$message = $_POST['message'];
$message .="\r\n from: $email";


if(mail ($to, $subject, $name,  $message)){
    echo "Enquiry sent successfully!<br>";
   
}
    else
    {
    echo "Mail was not sent. Please try again later<br>";
    }
} else{

echo"submit is not set<br>"; 
}

echo "after the if condition";


exit;

?> 

在这里我有新的联系人。php 文件 - 只需复制粘贴即可

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Unbenanntes Dokument</title>
</head>

<body>
    
<form id="contact-form" method="POST" action="mail.php">
                    <div class="row">
                        <div class="col-md-4">
                            <div class="form-group">
                                <label>Name</label>
                                <input class="form-control" name="name" id="name" placeholder="" type="text" required>
                            </div>
                        </div>
                        <div class="col-md-4">
                            <div class="form-group">
                                <label>Email</label>
                                <input class="form-control" name="email" id="email" placeholder="" type="email" required>
                            </div>
                        </div>
                        <div class="col-md-4">
                            <div class="form-group">
                                <label>Subject</label>
                                <input class="form-control" name="subject" id="subject" placeholder="" required>
                            </div>
                        </div>
                    </div>
                    <div class="form-group">
                        <label>Message</label>
                        <textarea class="form-control" name="message" id="message" placeholder="" rows="10" required></textarea>
                    </div>
                    <div class="text-right"><br>
                    
                        <button class="btn btn-primary solid blank button"  id="btn" type="submit" name ="submit" value="submit">Send Message</button>
                    
                    </div>
    
                </form>    
    
</body>
</html>

您应该在按钮上添加名称

<button class="btn btn-primary solid blank button"  id="btn" name="submit" type="submit" value="submit">Send Message</button>

同样,当您通过更改 header 进行重定向时,它不会向您显示警报,因为警报在不同的页面上。

试试这个代码

<form id="contact-form" method="POST" action="">
<div class="row">
    <div class="col-md-4">
        <div class="form-group">
            <label>Name</label>
            <input class="form-control" name="name" id="name" placeholder="" type="text" required>
        </div>
    </div>
    <div class="col-md-4">
        <div class="form-group">
            <label>Email</label>
            <input class="form-control" name="email" id="email" placeholder="" type="email" required>
        </div>
    </div>
    <div class="col-md-4">
        <div class="form-group">
            <label>Subject</label>
            <input class="form-control" name="subject" id="subject" placeholder="" required>
        </div>
    </div>
</div>
<div class="form-group">
    <label>Message</label>
    <textarea class="form-control" name="message" id="message" placeholder="" rows="10" required></textarea>
</div>
<div class="text-right"><br>
    
    <button class="btn btn-primary solid blank button"  id="btn" name="submit" type="submit" value="submit">Send Message</button>

</div>
</form>

并在下面将您的 php 代码写在同一个文件中

<?php
if(isset($_POST['submit'])) {

$to = "contact@imatrixautomation.com";
$name = $_POST['name'];
$email = $_POST['email'];
$subject = $_POST['subject'];
$message = $_POST['message'];
$message .= "\r\n from: $email";


if(mail($to, $subject, $name, $message)) {
    echo "<script>alert('Enquiry sent successfully!');</script>";
    
}
else {
    echo "<script>alert('Mail was not sent. Please try again later'); 
          </script>";
  }
}
?>

代替

<button class="btn btn-primary solid blank button"  id="btn" type="submit" value="submit" name="submit">Send Message</button>

<input class="btn btn-primary solid blank button"  id="btn" type="submit" value="submit" name="submit">

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM