휴대 전화에서 .vcf 파일을 다운로드 할 수있는 웹 사이트를 만들고 있습니다.이 파일은 내 브라우저에 저장되어 있지 않지만 데이터베이스에 저장된 데이터를 사용하여 생성됩니다. 내가 파일 abc.php 있다고 가정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, 크롬, 등.)하지만 난 (모바일 브라우저에서 같은 일을하려고 할 때 안드로이드, 윈도우 폰), 작동하지 않습니다.
때로는 내용이 "좋지 않음"인 파일 abc.html (abc는 내 PHP 파일의 이름 임)을 생성하거나 때로는 내용이 "not ok"인 contact.vcf/contact.html 파일을 만듭니다. (여기서 "not ok"는 세션 변수가 어떤 값과 같지 않을 때 인쇄하는 선입니다)
컴퓨터에서는 작동하지만 스마트 폰에서는 작동하지 않는 이유를 이해할 수 없습니다. 도와주세요. 그것이 모바일 브라우저에서 작동하지 않으면 내 웹 사이트의 전체 아이디어가 손실됩니다! 덕분에 !
편집 : 나는 어떻게 든, 난()로 세션을 사용하고있었습니다 내 루프에서 종료()하기 전에 문제 partially.Just를 해결 한
; 이제 왜 그런지 모르겠지만 모든 것이 끝나면 컨트롤이 다시 맨 위로 이동하여 "if"조건을 확인하고 세션이 파손 되었기 때문에 조건이 사실로 바뀌 었습니다. "not ok"가 내 파일에 출력됩니다.
이제 session_destroy()를 제거하면 잘 작동합니다 (휴대 전화에서도).
컨트롤이 정상으로 돌아가는 이유는 무엇입니까?
스마트 폰은 .vcf 파일을 허용합니까? – H2ONOCK