我正在創建網站,用戶可以在其中下載.vcf文件的手機。該文件沒有存儲在我的瀏覽器中,而是使用我的數據庫中存儲的數據生成的。PHP:強制下載不能在手機上工作
假設我有一個文件abc.php:
<?php session_start();
?>
<?php
if($_SESSION[abc] != some_value)
{
echo "not ok";
exit();
}
else
{
header("Content-Description: File Transfer");
header("Content-Type: text/vcard");
header("Content-Disposition: attachment; filename=contact.vcf");
echo "All vcard details in the standard vCard format......
.......
.....";
session_destroy();
exit();
}
現在,這個工作完全正常的計算機瀏覽器(IE,鉻等),但是當我試圖從移動瀏覽器做同樣的事情(機器人,Windows手機),它不起作用。
有時它會創建一個文件abc.html(abc是我的php文件的名稱),其內容爲「不正常」,或者有時會創建一個文件contact.vcf/contact.html,內容爲「不好」。 (其中「不好」是我打印時,會話變量不等於某個值的行)
我不明白爲什麼它在計算機中工作,但不是在智能手機中。請幫忙。如果它不適用於手機瀏覽器,那麼我的網站的整個想法就會丟失! 謝謝!
編輯:
我莫名其妙地解決了這個問題partially.Just退出()在我的循環之前,我用session_destroy(); 現在,我不知道爲什麼,但在完成所有事情後,控制權再次進入最高點,檢查「如果」情況,並且從現在開始會話被破壞,條件變得真實,並且我越來越「不好」作爲我的文件中的輸出。
現在當我刪除session_destroy(),它工作正常(也在手機)。
任何想法爲什麼控制回到頂部?
智能手機是否接受.vcf文件? – H2ONOCK