2 apbbbbb apbbbbb 于 2016.09.09 14:25 提问

用ck_edit编辑器上传图片,会保存到服务器,读取也能读到,但邮箱功能发送时,却收不到??

邮件功能,用ck_edit编辑器,上传图片,保存,再次查看时,图片也能读取出来,
但是点击发送,收件人却不能收到图片,图片位置显示一个空白,读取不出来,这个
要怎么做,只有把图片保存到数据库,图片才能读取出来么???????

2个回答

showbo
showbo   Ds   Rxr 2016.09.09 14:34

图片地址对了没有,发送邮件给别人图片地址要变为绝对地址,协议和域名加上,不能使用相对地址。

tina622
tina622   2016.09.09 17:00

插入的图片是绝对地址。使用:SRC="D:\1.jpg"。你要把这个图片文件先添加到附件里面去,在添加附件时会获得这个附件的GUID。然后再把IMG的SRC修改为
SRC="cid:xxxxxxxxx",这里的“xxxxxx”就是你附件的GUID。这样你发过去的时候,对方就能直接看到你插入的图片。
例如:

        HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
        doc.LoadHtml(edtMailBody.Text);
        //检查HTML中是否存在IMG标签,如果有,即表示有插入图片
        HtmlAgilityPack.HtmlNodeCollection divs = doc.DocumentNode.SelectNodes("//img");            
        if(divs != null)
        {
            foreach (HtmlAgilityPack.HtmlNode img in divs)
            {
                string imgpath = img.Attributes["src"].Value; //获得图片地址
                string ContentId = mailMessage.AddAttachment(imgpath, true, null); //将图片插入为附件 
                img.Attributes["src"].Value = "cid:" + ContentId; //将SRC替换为CID
            }
        }
tina622
tina622 回复479925485: 你要把邮件变成 HTML文档。如果文本编辑器不能自己生成HTML文本的话,你可以用webbrows控件的编辑模式做为你的HTML编辑器。具体的情况你可以百度。或者发邮件给我:fw2016015@finework.win
接近 2 年之前 回复
apbbbbb
apbbbbb 明白你的意思,但是这个cke_editor文本编辑器,保存图片的到数据库是这样保存进去的<input alt="" src="/upload/ckDir/images/Desert.jpg" style="width: 1024px; height: 768px;" type="image" /> 而且数据库中的图片也不显示,只是页面读取出来了
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
OutLook 2007 本地接收邮件,解决服务器空间负担过大
呵呵,这里介绍一下本地接收邮件,不过由于本人电脑水平太差,可能有些东西理解有问题,要是有高手看到,希望指正啊。一般来说我们收到的邮件都是存放在服务器上的,但是一般服务器给的空间并不是很大,于是,工作中经常接收大量的邮件  的话,没多长时间,系统就会提示没有空间接收邮件了。删邮件其
保存textarea编辑格式到数据库,并在div中正确显示出来
在textarea中输入回车符 在js读取textarea中的值有\r\n然后到业务层转换到string中就有可能变成空格形式然后被存入数据库,当在取出此值的时候则会变成空格的形式,因此我们需要将不显示的\r\n替换一下。     在js取textarea的时候:     如果用      var str = document.getElementById("textarea").va
discuz发送邮件后台测试正常,但前端使用时却接受不到邮件
弄了三天的后台邮箱,终于测试成功了,但是到前端试了一下,却无法收到邮件(T _T),心情从低谷到高峰,有掉回了低谷。 进入后台文件找到 log 文件夹,里面有个201801_SMTP.php日志文件,记事本打开到最下面,有下面这段话: 553 Envolope sender mismatch with header from.. 结论是站点信息中的管理员邮箱必须和邮件设置中的邮箱地址一样。
PHPmailer发送邮件成功,对方收不到邮件
项目中使用PHPmailer,发送邮件到客户的邮件服务器,$mail对象返回发送结果为true,结果客户那边的邮箱总是收不到邮件。 设置$mail->SMTPDebug = 2,把客户端和服务器端的错误都返回到echo出来,结果在chrome的network里,怎么看都没有发现任何错误的信息。 试着把收件人的邮箱换为我自己的QQ邮箱,发现可以收到邮件。于是怀疑对方的邮件服务器过
图片上传,将图片存到本地,而不是服务器上
这个时候需要修改tomcat的server.xml这个文件夹,添加一个虚拟目录,代码如下: <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Context docBase="D:/liuxiaowei/ReportManagement/WebR
QQ邮箱默认竟然不保存到“已发送”
今天第一次使用QQ邮箱,发现它竟然不把已经成功发送出去的邮件保存到“已发送”,导致看不到已发送的邮件。 解决办法: 在每次发送邮件前,点邮件编辑页面中的“其它选项“,然后在出现的单选框中点”保存到已发送“
javaMail发送邮件 发送成功 收不到邮件 或收到邮件无主题无收件人乱码
javaMail发送邮件 发送成功 收不到邮件 或收到邮件无主题无收件人乱码 查看debug 邮件处理过程发现邮件头没有编译, 内容是base64编码,所以邮箱收不到或者收到的是base64编码后的一堆乱码,
Android使用xutils图片上传和服务器接收
使用xUtils   https://github.com/wyouflf/xUtils上传图片: Client: 需要Xutils.jar 调用上传:   String uploadHost="http://129.44.0.137:8080/AndroidUploadServer/upload.do";  RequestParams params=new
redmine比较慢以及测试邮件发送完成收不到邮件
当delivery_method设置为:smtp时, 它的处理流程是这样的: 在触发邮件发生的事件发生后, 首先发送邮件, 直到邮件发送完毕, 页面才跳转. 这就是说在发送邮件的过程中, 页面一直处于等待状态.那么有没有一种异步发送邮件机制呢? 在Redmien 0.9 之后, 可通过将delivery_method设置为:async_smtp, 这时发送邮件和页面跳转属于不同的线程, 当触发邮
Webmail邮件服务器搭建-有问题-邮件发出去,对方收不到
#搭建WebMail邮件服务器 #1.关闭系统默认安装的 sendmail: [root@red4 ~]# service sendmail stop 关闭 sendmail: [失败] [root@red4 ~]# [root@red4 ~]# chkconfig --level 35 sendmail of