用户
 找回密码
 入住 CI 中国社区
搜索
查看: 4817|回复: 12
收起左侧

关于email类的问题(有新问题!!!)

[复制链接]
发表于 2009-6-19 16:42:20 | 显示全部楼层 |阅读模式
本帖最后由 moorland 于 2009-6-19 18:01 编辑

请问CI的email类是否能够判断
1.邮件是否发出? 如果没有发出, 是否能够报错?
2.邮件是否被接受人收到?

多谢


还想问一下, Email 参数中的validate 是验证谁的地址?
如何使用?
发表于 2009-6-19 16:58:49 | 显示全部楼层
可以判断报错,根据->email->send()返回值
接收到无法用CI判断的
 楼主| 发表于 2009-6-19 17:17:01 | 显示全部楼层
可以判断报错,根据->email->send()返回值
接收到无法用CI判断的
visvoy 发表于 2009-6-19 16:58


用什么能判断邮件是否接收到呢?
发表于 2009-6-19 17:28:19 | 显示全部楼层
用outlook express可以设置看信回复,但是用户可以强制不回复的
暂时没有确认对方收到的办法
 楼主| 发表于 2009-6-19 18:04:12 | 显示全部楼层
用outlook express可以设置看信回复,但是用户可以强制不回复的
暂时没有确认对方收到的办法
visvoy 发表于 2009-6-19 17:28


我不是想知道用户是否看信了, 我只是想知道信是否已经到达了,
是不是不可能啊?

或者也许有办法判断用户的邮件地址是否真实有效?
发表于 2009-6-19 18:11:00 | 显示全部楼层
貌似没有哪个email商提供信件追踪,感觉追踪有点侵犯个人隐私,呵呵,我乱猜的
真实email的话,->send()成功就是真的啦
发表于 2009-6-19 18:18:09 | 显示全部楼层
validate只是用正则验证to是否符合email格式,不是远程验证接收人
发表于 2009-6-19 18:31:59 | 显示全部楼层
版主说的对,只能确定邮件是不是到达了 smtp 服务器,而不能确定 smtp 服务器到底发没发这个信,那个是smtp服务器自己的逻辑了,呵呵
发表于 2009-6-20 11:33:40 | 显示全部楼层
可以稍作调整跟踪到用户是否打开邮件,方法:
在邮件里附上<img src="http://www.mywebsite.com/email_open_log.php?uid=xxx@oalite.com&uuid=xxxxxxxx" />,同时建立一个发送日志记录表,记录用户uid,特别标识uuid,已读标识isopen等

email_open_log.php处理逻辑
获取$_GET['uid'], $_GET['uuid'],根据这两个值更新发送记录表isopen为已读;
然后读取1X1的一个空白gif图片输出,或者动态生成一个也可。
发表于 2009-6-20 16:44:59 | 显示全部楼层
有的email服务商默认不会显示图片,如gmail会将src=''的内容去掉,OE默认也不显示外联图片的

本版积分规则