美文网首页
PHP结合smtp类发送邮件

PHP结合smtp类发送邮件

作者: 无聊的电风扇 | 来源:发表于2017-11-11 14:39 被阅读0次

    虽然现在大家都很少会通过邮件来交流了,但是在工作中,或者说在项目中,我们还是难免会需要发一些email或者说需要我们的项目可以发送email,今天就来简单介绍一下PHP发送email的方式。

    首先,PHP手册里,给了我们一个函数


    image.png

    但是,当我们按照手册里的规定,配好参数之后发现,不行。

    因为我们自己一般是没有SMTP服务器的。SMTP就是一种邮件传输的协议,就算我们有了SMTP服务器,还要验证等等,不太好实现,所以我们还有另一种方式来实现。

    先整一个HTML页面

     <form action="sendmail.php" method="post">
            <p>收件人:<input type="text" name="toemail" /></p>
            <p>标&nbsp;&nbsp;题:<input type="text" name="title" /></p>
            <p>内&nbsp;&nbsp;容:<textarea name="content" cols="50" rows="5"></textarea></p>
            <p><input type="submit" value="发送"  /></p>
    </form>
    

    PHP文件代码

    <?php
            require_once "email.class.php";
            //******************** 配置信息 ********************************
            $smtpserver = "smtp.126.com";//SMTP服务器
            $smtpserverport =25;//SMTP服务器端口
            $smtpusermail = "yourEmail@126.com";//SMTP服务器的用户邮箱
            $smtpemailto = $_POST['toemail'];//发送给谁
            $smtpuser = "helloemail";//SMTP服务器的用户帐号(@前面的部分,类似于你的QQ号)
            $smtppass = "******";//SMTP服务器的用户密码(在你开启邮箱SMTP服务时设置会系统给出的密码)
            $mailtitle = $_POST['title'];//邮件主题
            $mailcontent = "<h1>".$_POST['content']."</h1>";//邮件内容
            $mailtype = "HTML";//邮件格式(HTML/TXT),TXT为文本邮件
            //************************ 配置信息 ****************************
            $smtp = new Smtp($smtpserver,$smtpserverport,true,$smtpuser,$smtppass);//这里面的一个true是表示使用身份验证,否则不使用身份验证.
            $smtp->debug = false;//是否显示发送的调试信息
            $state = $smtp->sendmail($smtpemailto, $smtpusermail, $mailtitle, $mailcontent, $mailtype);
    
            echo "<div style='width:300px; margin:36px auto;'>";
            if($state==""){
                echo "对不起,邮件发送失败!请检查邮箱填写是否有误。";
                echo "<a href='index.html'>点此返回</a>";
                exit();
            }
            echo "恭喜!邮件发送成功!!";
            echo "<a href='index.html'>点此返回</a>";
            echo "</div>";
        ?>
    

    简单的来看一下效果


    image.png
    image.png

    好了,这样就完成了简单的文本邮件发送了。

    注意:发送方使用的邮件一定要开启POP3/SMTP服务,并且记住密码,谢谢。

    相关文章

      网友评论

          本文标题:PHP结合smtp类发送邮件

          本文链接:https://www.haomeiwen.com/subject/hzwwmxtx.html