我想知道,我怎样才能实现Vcard下载。 这是我目前的代码:
$path = "../../media/resources/";
$file = "someName.vcf";
header('Content-Type: text/x-vCard');
header('Content-Disposition: attachment; filename= "'.$file.'"');
header('Content-Length: '.filesize($path.$file));
header('Connection: close');
readfile($path.$file);
不幸的是,它只会提供.vcf文件中的内容。 如何将此vcard作为下载提供给用户?
答案 0 :(得分:3)
你有header('Connection: close');
我想象在读取文件内容之前关闭连接。我删除了这条线。
我不确定内容类型的区分大小写,所以我将其更改为x-vcard,并将内容处置更改为内联(IE的下载问题的已知修复)。试试这个:
$path = "../../media/resources/";
$file = "Toni_Junas.vcf";
header('Content-Type: text/x-vcard');
header('Content-Disposition: inline; filename= "'.$file.'"');
header('Content-Length: '.filesize($path.$file));
readfile($path.$file);
另外,确保目录“resources”是可读的(目录上的chmod 755)并且文件存在...
答案 1 :(得分:0)
放exit()
readfile($path.$file);
exit();