找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1227|回复: 0

[分享] 织梦发送邮件的时候发件人处乱码

[复制链接]
发表于 2018-7-22 10:50:56 | 显示全部楼层 |阅读模式 来自 中国–河南–新乡
 织梦的UTF8版本一直有一些编码的问题,转码的问题没有处理的非常好,所以一般选择织梦版本的时候,会选择织梦GBK版本,今天发现的织梦发送邮件时,发件人乱码的问题,也是织梦DedeCMS的UTF-8版本。
  织梦UTF-8版本发送邮件乱码是存在已久的问题,最新5.7 SP1的UTF8版本已经解决了大部分乱码问题。但是163、126邮箱或者QQ邮箱接收织梦DedeCMS发送的邮件时,发件人显示的还是乱码(调用的系统设置里的网站名称),而且网站名称太长时十分不美观,如何使发件人中文名既不乱码,又能随意修改为较短的名称呢?
  织梦发送邮件中文发件人乱码
  既然是乱码,解决的办法就是进行转码了。经过搜索,结合前人的经验找到以下办法,提供给大家:
  首先我们打开织梦的邮件发送文件,include/mail.class.php文件,查找以下的代码:
  1. $header .= "From: $webname<".$from.">\r\n";
复制代码

  在此行代码上面添加一行代码:
  1. $webname = "=?".$GLOBALS['cfg_soft_lang']."?B?".base64_encode('[url=http://bbs.piaoxian.net/]建站[/url]网')."?=";
复制代码

  以上的代码,就是使用PHP的转码函数,根据安装的系统编码,对中文发件人名称进行了转码。如果嫌系统调用的发件人名称太长,可以将XXXX网这一发件人名称修改为你想要的任意中文名。如不想改动,可以将 'XXXX网' 换成 $webname 调用网站名。
  以上的解决办法经过在织梦DedeCMS 5.7SP1的UTF-8版本中测试,完美解决了乱码问题。

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号

关闭

站长推荐上一条 /1 下一条

QQ|侵权投诉|广告报价|手机版|小黑屋|西部数码代理|飘仙建站论坛 ( 豫ICP备2022021143号-1 )

GMT+8, 2024-12-24 00:00 , Processed in 0.043488 second(s), 8 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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