使用PHP发送邮件,未收到邮件

使用PHP发送邮件,未收到邮件,php,email,Php,Email,这是我的Send_Mail.php: <?php // site owner infos $email_to = 'kaouach.ahmed@gmail.com'; $success_message = "Your message has been successfully sent."; $site_name = 'Personal Website'; // contact form fields $name = trim( $_POS

这是我的Send_Mail.php:

<?php
    // site owner infos
    $email_to = 'kaouach.ahmed@gmail.com';
    $success_message = "Your message has been successfully sent.";
    $site_name = 'Personal Website';

    // contact form fields
    $name = trim( $_POST['name'] );
    $email = trim( $_POST['email'] );
    $message = trim( $_POST['message'] );
    $submitted = $_POST['submitted'];

    // contact form submitted
    if ( isset( $submitted ) )
    {
        // check for error
        if ( $name === '' ){
            $name_empty = true;
            $error = true;}
        elseif ... // Checking of others attributs

        // If error
        if ( isset( $error ) )
        {
            echo '<div class="alert alert-error contact-alert"><strong>UNSUCCESS! </strong><ul>';

            if ($name_empty) {echo '<li>Required</li>';} 

            elseif ... // same for Other attribute 

            else{ echo '<li>An error has occurred while sending your message. Please try again later.</li>';}

            echo "</ul></div>";
        }

        // no error, sending mail
        if ( ! isset($error) )
        {
            $subject = 'Contact form message from your ' . $site_name . ' site';     
            $body = "Name: $name \n\nEmail: $email \n\nMessage: $message";    
            $headers = 'From: ' . $name . ' <' . $email . '> ' . "\r\n" . 'Reply-To: ' . $email;     
            mail( $email_to, $subject, $body, $headers );     
            echo '<div class="alert alert-success contact-alert"><strong>SUCCESS! </strong>' . $success_message . '</div>';
        }
    }

?>

当我发送邮件时,它会向我显示成功消息并发送,但当我选中我的gmail框时,什么也没有收到。 那么这里的问题是什么?如何解决?请

更新2
问题不是来自php文件,服务器上不允许匿名邮件发送,因此如何将SMTP、用户名和密码属性添加到我的php文件中

可能是电子邮件smtp服务器的问题。请确保邮件服务器工作正常。

是否安装了邮件服务器?例如,sendmail或postfix?作为旁白,您确实意识到您正在一个广泛访问的网站上发布您的电子邮件地址,对吗?也就是说,问题可能来自很多地方,您应该一步一步地调试它:1)确保邮件已发送(PHP调试)2)确保邮件服务器接收并处理(日志)3)检查gmail是否认为使用诸如phpmailer等传输类发送邮件以及使用邮件服务器发送邮件不属于垃圾邮件。如果您打算使用gmail,则可以使用gmail的smtp。请确保选中google mail左侧栏上的“更多->所有邮件”。当电子邮件看起来像垃圾邮件时,谷歌倾向于将电子邮件排除在收件箱之外(与发件人地址不匹配的邮件服务器是垃圾邮件的一个重要标志)检查邮件的内容($email_to、$subject、$body、$headers);返回。检查您的php.ini配置。这是对我的SMTP服务器的测试: