存储到数据库时,电子邮件地址有app +乱码

时间:2012-07-12 04:47:31

标签: php facebook codeigniter

今天检查我的数据库时,我注意到有些记录在电子邮件字段中有这样的乱码格式

app+9276ti5j64.ir10bj.618106aa6d78af59ff4c7f79f1bf

我注意到这些记录都来自Facebook Connect,尽管这只是其他成功Facebook Connect的一小部分。电子邮件记录来自

$me = $this->facebook->api('/me');
$email = $me['email'] 

如果它无法从Facebook获取,为什么电子邮件包含这个乱码字符串而不是NULL或空? (虽然由于某些原因,fb_uid和其他字段正常通过)

有没有人遇到同样的问题?它是Facebook Connect的错误,是什么导致了这个?

1 个答案:

答案 0 :(得分:1)

这是特殊的代理Facebook电子邮件。

在FB将连接窗口更改为我们现在的状态之前 - 可以选择是否将真实电子邮件或代理邮件发回给您。

如果您的字段长度较长 - 您会看到整个代理电子邮件,虽然看起来很难看仍然是完美的电子邮件,只会将电子邮件代理到真实的用户电子邮件(您不知道)。

现在该怎么做:

  1. 放大电子邮件字段长度。有效长度最多可达255个字符
  2. 以某种方式处理垃圾邮件。可能 - 从那些用户那里重新请求
  3. 随意使用相同的代码 - 现在它将始终返回真实用户的电子邮件