2012-07-06 2 views
0

브라우저에서 FF/Chrome/IE/Safari 팝업 차단기가 허용/설정되어 있는지 PHP에서 확인할 수 있습니까? 그러나 어쩌면 당신이 뭔가를 할 수브라우저 팝업 차단기가 꺼져 있습니다/

<script language="javascript"> 

var myWindow; 

myWindow= window.open(...); 
if (myWindow.closed) { 
    //pop up disabled 
} 

</script> 

그러나 클라이언트에서만 검출 할 수 PHP ^^

+1

나는 아무 방법도 없다고 생각합니다. 이런 자바 스크립트를 시도해보십시오 [JavaScript를 사용하여 팝업 차단기 테스트] (http://davidwalsh.name/popup-block-javascript) –

+0

"허용됨"이란 무엇을 의미합니까? PHP 파일이 있고 팝업 차단기가있는 브라우저로 호출하는 것이 맞습니까? 누가 무언가를 허용하고 언제 어떤 근거로 결정할 것인가? 우리가 할 수있을 지 말하기 전에 먼저이 사실을 말해야합니다. 또는 귀하의 질문을 받고 있지 않습니다. 명확히하십시오. – Nanne

+0

@BasicBridge : 네 최고의 대안! – Suleman

답변

1

팝업 차단에없는 :

+0

예, JS에서 필요합니다. – Suleman

1

당신은 그런 일을 시도 할 수 있습니다

  • 테스트 팝업을 실행하고 자바 스크립트로 즉시 닫습니다. 프로세스가 진행되는 동안 팝업이 성공했는지 차단되었는지 검색합니다.

  • 일단 완료되면 AJAX 요청을 서버에 발생시키고 팝업 차단기로 세션 변수에 차단되었는지 여부를 저장하십시오. 당신은 통계 목적을 위해 데이터를 수집하지 않는 서버 측 코드는, 클라이언트가 활성화 된 팝업 차단기가 있는지 알 필요가 왜

그러나, 나는 정말 볼 수 없습니다.

+0

괜찮습니까? –

1

PHP는 서버 측 언어이기 때문에 PHP 만 사용하는 것이 불가능합니다. 다른 답변이 말했듯이이 작업을 위해 자바 스크립트를 사용합니다 (아마 AJAX?).

PHP는 브라우저에 대해 "약간"을 알고있을 수 있지만 요청 헤더에는 무엇이든 있습니다. 여기에는 사용자 에이전트 헤더가 포함되어 있습니다.이 헤더는 사용자가 사용하는 브라우저를 정확하게 알려주고 정보를 표시하는 전략은 사용자 에이전트에 의존적 일 수 있습니다 (모바일 페이지를 탐색 할 때 모바일 버전을 표시하기 위해 수행하는 웹 페이지 모바일 브라우저).

관련 문제