我不能用php发送邮件

时间:2014-09-12 09:16:05

标签: php email

我的代码是:

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


                //veryfing the name
                if(empty($_POST['name'])){ ?>
                    <div class="alert alert-danger alert-dismissable"><button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>PLease enter your name .</div>
                <?php}
                else{
                    $name = htmlentities($_POST['name']);
                }


                //veryfing the email
                if(empty($_POST['email'])) { ?>
                    <div class="alert alert-danger alert-dismissable"><button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>PLease enter your email .</div>
                <?php}
                else if(filter_var($_POST['email'] , FILTER_VALIDATE_EMAIL === false)){ ?>
                    <div class="alert alert-danger alert-dismissable"><button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>PLease enter a valid email .</div>
                <?php }
                else{
                    $email ="<". htmlentities($_POST['email']).">";
                }



                if(empty($_POST['message'])){?>
                    <div class="alert alert-danger alert-dismissable"><button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>PLease enter some message .</div>
                <?php}
                else{
                    $message = htmlentities($_POST['message']);
                }
                if(empty($_POST['name'] ) or empty( $_POST['email']) or empty($_POST['message']) ){?>
                    <div class="alert alert-danger alert-dismissable"><button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>Something went wrong ! .</div>
                <?php}
                else{
                    $headers = 'From: {$email}' . "\r\n" .
                        'Reply-To: {$email}' . "\r\n" .
                        'X-Mailer: PHP/' . phpversion();
                    $send_mail = mail("seiramami12@gmail.com" , "An email from Omarmannan.net" , $message , $headers);

                }
                if(!$send_mail){?>
                    <div class="alert alert-danger alert-dismissable"><button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>Something went wrong ! .</div>
                <?php }
                else{
                    echo '<div class="alert alert-success">Email successfully sent. Thank you for your message.</div>';
                }
            }?>

但我无法发送邮件。我一直在使用自己的个人网站。在我的联系页面中,我无法使用此代码发送邮件。单击“提交”按钮后,它将显示一个空白页面。

1 个答案:

答案 0 :(得分:1)

php mail()函数在某些时候表现出意外。

  

根据我的经验 - 以及其他人 - mail()函数不是特别可预测,或者>有帮助。

     

值得注意的是,mail()函数在Linux和Windows&gt;服务器之间的行为完全不同。在linux上它使用sendmail,但在Windows上它使用SMTP。

     

为了使mail()函数能够在所有php.ini中正常工作,需要正确配置&gt;指定sendmail或SMTP服务器的位置。

     

mail()的问题在于它“试图”简化事情,以至于由于界面设计不佳而导致事情变得更加复杂。 Swift Mailer的开发人员已经付出了很多努力,使邮件传输工作具有合理程度的一致性。

我建议您使用SwiftMailer库发送邮件,这非常强大。