클라이언트 시간대 오프셋을 결정하는 할당 작업 중이며, 클라이언트 영역에 대한 시간대 식별자를 가져 오는 코드가 포함 된 PHP 스크립트에 전달합니다.PHP 페이지 문제에 대한 AJAX 호출 사용
지금은 시간대 오프셋을 확인하기 위해 JavaScript를 사용했습니다. 그러나 이것을 PHP로 전달하는 방법이 필요합니다. 나는 AJAX 호출을 사용했다.
var url = "index.php";
url=url+"?client_timezoneoffset="+offset;
xmlhttp.open("GET",url,true);
xmlhttp.send(true);
이 JavaScript는 index.php의 onload를 호출합니다. 하지만 여전히 $ _GET은 비어 있습니다. 이 구현을 왜곡하고 다른 페이지를 호출했습니다. set_client_timezone.php 놀랍게도, $ _GET에 시간대가 포함되어 있습니다. 나는 $ _SESSION에 그것을 저장했다.
응용 프로그램의 모든 테스트를 수행했을 때 놀랍게도 시간대 변경 사항이 페이지의 두 번째로드에 반영되고있었습니다.
처음으로 내가 http://www.example.com/index.php으로 이동하면 시간대가 UTC로 표시되지만, 다시로드하면 내 시간대 - 아시아/캘커타 당 정확한 시간이 표시됩니다.
너희 중 누구도 나 한테이 역설을 피할 수 있겠 니?
사람이 나에게 동일을 달성하는 표준 방법을 가리킬 수 내 게시물은 어떤을 경멸 만약 내가 처음 그래서 진심으로 사과이 포럼에 게시하도록하겠습니다
을 (내 현재의 구현을 롤백 할 준비가) 이 포럼의 규칙.
환호,
Abhijit.
감사
Abhijit합니다. 내 PHP 스크립트에 대한 기본 시간대를 설정해야하는 경우에 따라 클라이언트 시간대 오프셋을 결정하기 위해 JavaScript를 사용하고 있습니다. – Abhijit
어떻게 시간대를 결정합니까? php에서도 가능하지 않습니까? 그 외에 내가 생각할 수있는 유일한 해결책은 아약스에 의해 모든 것을로드 (또는 타임 존에 의존)하는 것입니다.따라서 해당 데이터 집합을 표시하는 데 사용되는 표준 시간대를 이미 알고 있는지 확인할 수 있습니다. – enricog
참조 ... http://www.example.com/index.php의 페이지로드시 초당 오프셋을 반환하는 위 JavaScript를 호출합니다. GET을 사용하여 set_client_timezone.php 페이지로 전달합니다. 이 페이지에서 $ _SESSION으로 설정했습니다. – Abhijit