找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 157|回复: 0

[cms教程] 织梦邮件函数做到独立页面的方法

[复制链接]

该用户从未签到

发表于 2020-2-8 10:32:26 | 显示全部楼层 |阅读模式

您需要 登录 才可以下载或查看,没有账号?立即注册

×
织梦的邮件发送只能用系统MAIL函数或者SMTP, 如果服务器是linux基本可不用配置任何SMTP信息。但是如果是windows机器,就必须配置SMTP。
         
        我们配置SMTP会出现意外,比如用QQ邮箱。
         
        QQ邮箱:
         
        1.  企业邮箱明显比QQ普通邮箱好用,不容易进入垃圾箱
         
        2. QQ邮箱必须配置启用SMTP
         
        3. SSL明显比不启用效率高
         
        在织梦DEDECMS关键函数部分
         
        require_once(dirname(__FILE__).'/../include/common.inc.php'); //在dedecms内必须引用
        //邮件发送函数
        function sendmail($email, $mailtitle, $mailbody)
        {
        global $cfg_sendmail_bysmtp] $cfg_smtp_server, $cfg_smtp_port, $cfg_smtp_usermail, $cfg_smtp_user, $cfg_smtp_password, $cfg_adminemail,$cfg_webname;
        if($cfg_sendmail_bysmtp == 'Y' && !empty($cfg_smtp_server))
        {
        $mailtype = 'HTML';
        require_once(DEDEINC.'/mail.class.php');
        $smtp = new smtp($cfg_smtp_server,$cfg_smtp_port,true,$cfg_smtp_usermail,$cfg_smtp_password);
        $smtp->debug = false;
        if(!$smtp->smtp_sockopen($cfg_smtp_server)){
         ShowMsg('邮件发送失败,请联系管理员','-1');
           exit();
        }
        $smtp->sendmail($email,$cfg_webname,$cfg_smtp_usermail, $mailtitle, $mailbody, $mailtype);
        }else{
        @mail($email, $mailtitle, $mailbody, $headers);
        }
        }
         
        在相应页面做以下代码
         
        if(!$_POST) exit;
            $address = admin@lol9.cn';
        $name   = $_POST['name',;
        $mailto   = $_POST['email',;
        $mailtitle   = $_POST['subject',;
            $mailbody = $_POST['message',;
        $sendtime = time();
        if(get_magic_quotes_gpc()) { $comment = stripslashes($comment); }
        $msg  = "You have been contacted by $name with regards to $mailtitle.\r\n\n";
        $msg .= "$mailbody\r\n\n";
        $msg .= "You can contact $name via email, $mailto.\r\n\n";
        $msg .= "-------------------------------------------------------------------------------------------\r\n";
        if(@sendmail($address, $mailtitle, $msg, "From: $mailto\r\nReturn-Path: $mailto\r\n"))
        {
        echo "Thanks for Contact Us.
";
        }
        else
        {
        echo "邮件发送成功
";
        }
        ?>
        再去包含个HTML页,就可以让用户通过邮件留言了
回复

使用道具 举报

网站地图|页面地图|文字地图|Archiver|手机版|小黑屋|找资源 |网站地图

GMT+8, 2024-11-8 17:13

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表