论坛
门户
内部优惠
喜欢
话题
VIP会员
搜索
新浪微博
登录
注册
100%
100%
首页
>
网页设计
>
php技术
>
用php将数据导入到foxmail_php实例
回复
« 返回列表
111111
精灵王
注册日期
2010-12-08
发帖数
640
QQ
火币
1103枚
粉丝
120
关注
75
加关注
写私信
打招呼
阅读:
4042
回复:
0
用php将数据导入到foxmail_php实例
楼主
#
更多
只看楼主
倒序阅读
发布于:2010-12-15 20:50
保存
100%
100%
[]
1
最近小阳做了一个PHP同学录,同学们自己在那里添加或修改姓名、邮箱、OICQ等信息,并保存在mySQL数据库里。某日小阳忽然想到,如果能用PHP生成一个文件,供同学们下载并把这些资料导入他们的Foxmail地址簿中,那该多好啊!
说干就干,非常快小阳便将这功能推出来了。那是怎么实现的呢?这里仅以导出姓名、邮箱和OICQ三项予以说明。
要资料能导入Foxmail地址簿,当然要先了解一下导入Foxmail地址簿的文件内容和格式。打开Foxmail4.2一个帐户的地址簿,在其菜单栏“工具”-“导入”中能看到,Foxmail支持两种外部文件的导入:“CSV文件”和“Wab文件”。我们选择生成CSV文件。那么能导入Foxmail的CSV文件的内容和格式怎么呢?让我们先从Foxmail导出一个CSV文件看一下。在Foxmail地址簿中选择一个记录不为空的目录,执行“工具”-“导出”- “文本文件”,保存文件名为“TEMP.CSV”, 在“下一步”的“请选择输出字段”中选择“姓名”、“电子邮箱地址”和“OICQ”,点击“完成”后便在指定路径生成了“TEMP.CSV”文件了。如果你装了
微软
office系列,会发现这是个用EXCEL默认打开的文件,实际上他是EXCEL的逗号分隔值文件,双击打开后,其界面如图所示。
我们在这种情况下还是无法知道他的写入格式的。将“TEMP.CSV”文件改为用记事本打开,便能发现他的格式非常简单:如图,文件第一行是Foxmail地址簿的字段,其他行是字段对应的值,各字段和值用英文逗号分隔。所以我们在PHP中按这种格式生成CSV文件,别人就能下载并导入他们的Foxmail中了!
不过更有一个问题需要解决,那就是既然文件中以逗号作为分隔值,如果数据库记录中有英文逗号(注:以下符号若无特别说明皆指英文符号)怎么办?当然你能先将数据中的逗号替换为中文逗号,但其实更有一个方法,那就是如果CSV文件相应的字段两端加上双引号(“即" "”)作分隔值,其间的英文逗号不作为分隔值,且字段中连续两个英文双引号(即“""”)也只作为一个显示,而不作为分隔值。
有了这些认识,我们就能编写导出CSV文件的PHP文件了:
在服务器上运行上述PHP文件,下载回来的“tofoxmail.csv”文件用记事本打开如图所示。
在Foxmail地址簿中点击“工具”-“导入”-“CSV文件”……,数据库中一大堆的资料一下子就全被导入了,这个主意还不错吧!
(以上程式在Apache+PHP4+mySQL和IIS+PHP4+mySQL中皆测试通过。)
喜欢
0
评分
0
最新喜欢:
回复
100%
发帖
回复
« 返回列表
普通帖
您需要登录后才可以回帖,
登录
或者
注册
100%
返回顶部
关闭
最新喜欢