2009-10-31 2 views
0

브라우저를 실행하지 않고 서버 측 (PHP)에서 DIV의 너비와 높이를 확인할 수 있는지 궁금합니다.서버 측에서 HTML DIV의 너비와 높이를 확인하는 방법은 무엇입니까?

파서를 쓰지 않으면 불가능한 것처럼 보입니다. 아무 가치도 없습니다.

내가 생각할 수있는 Rube Goldberg 방식은 DIV를 html로 변환 한 다음 html로 변환 한 다음 PDF로 변환 한 다음 크기를 얻는 것입니다. 매우 비효율적이다. 이 경우에도 PDF 페이지 크기를 어떻게 설정할지 모르겠습니다.

실용적인 문제는 클라이언트 측에서 생성 된 광고의 크기를 확인하고 싶다는 것입니다. 사용자는 크기에 따라 요금이 부과됩니다. 측정 기준을 검증하는 다른 방법은 무엇일까요? Google과 adready (www.adready.com)는 이미 이와 같은 작업을 수행하지 않습니까?

수정 됨 : 광고는 템플릿 기반이며 고객이 변경하는 텍스트 변수는 거의 없습니다.

+0

일부 xhtml에서 pdf 로의 변환 도구가 있습니다. 그들은 도움이 될 수 있을까요? – understack

답변

2

확실히 불가능합니다. 사용자가 제어 할 수없는 페이지가 렌더링되는 방식에 영향을주는 클라이언트 측 설정이 많이 있습니다. 당신이 할 수있는 유일한 방법은 BrowserShots (http://browsershots.org)와 같은 서비스를 사용하여 가장 일반적인 브라우저에서 사이트의 모습을 보여주는 스크린 샷을 만드는 것입니다.

편집 : 당신 할 수는 두 번째 생각에,는 요소의 크기를 결정하는 자바 스크립트 쓰기입니다 - 충분한 프로토 타입을 사용 .getDimensions()와 같은 크로스 브라우저 프레임 워크를 사용하여 쉽게 - 것을 보내 Ajax를 사용하여 서버로 다시 데이터 보내기. callcacks를 식별하려면 고유 ID를 생성해야하지만 이것은 좋은 방법입니다. 프로덕션 환경에서이 기능을 사용하는 것은 다소 과잉으로 보일 수 있지만 매일 사이트에 많은 리소스를 소비하는 Javascript가 내장되어 있습니다.

+0

그건 내가 생각한거야. 그러나 BrowserShots는 차원을 동적으로 확인하기 때문에 옵션이 아닙니다. – understack

+0

나는 내 대답을 편집했다, abobe를 보아라. –

+0

@pekka : "Ajax를 사용하여 해당 데이터를 다시 서버로 전송하십시오."이미 수행하고 있지만 서버에서이 크기의 데이터를 확인할 수 없습니다. 클라이언트 측에서 얻은 것이 무엇이든, 그것이 맞다고 가정해야합니다. – understack

관련 문제