2011-05-02 4 views
0

"이 페이지를 이메일로 보내기"팝업 페이지에서 작업 중입니다. 기본 페이지의 URL을 이메일로 보내려고하지만 팝업 창이되어야합니다.PHP에서 페이지의 URL 가져 오기

나는 을 사용했으며 Firefox에서는 제대로 작동하지만 Internet Explorer에서는 작동하지 않습니다.

현재 페이지의 URL을 받고 있지만 새 팝업 창 페이지에서 해당 URL을 원합니다.

HTTP_REFERER 이외의 대체 방법이 있습니까?

답변

0

저장하거나 직접 보내지 않는 한 방법이 없습니다. This 페이지에는이를 수행하는 방법에 대한 한 가지 예가 있지만 사전에 설정 한 경우에만 해당됩니다. 사이트가 귀하의 사이트라면 괜찮을 것입니다. 그렇지 않다면 당신은 고투 할 것입니다.

0

HTTP_REFERER이 클라이언트 브라우저에서 전송 되었기 때문에 이러한 상황이 발생합니다. 이는 값이 완전히 조작되거나 심지어 null 일 수 있음을 의미합니다. 이것은이 변수가 그다지 신뢰할 수 없다는 것을 의미합니다. 그러나 사이트가 귀하의 것이면 다른 솔루션이 있습니다.

URL이나 QueryString을 통해 ID와 같은 다른 ID를 보낼 수 있습니다. 따라서 링크 URL은 다음과 같습니다. the_send_page_name.php?ref=index.php

이 방법은 자신의 사이트에서 팝업을 여는 경우에만 작동합니다.

2

URL을 가져올 페이지에서 $_SERVER['REQUEST_URI']을 사용하여 & 호스트 이름을 제외하고 요청 된 URI를 가져올 수 있습니다. 즉, 경로와 쿼리 문자열을 얻습니다. 이것을 쿼리 문자열 또는 sessions을 사용하여 다른 페이지로 전달하십시오. 전자는 후자가 RESTful이 아니기 때문에 바람직하다. 서버 측 상태에 대해 REST의 규칙을 위반해도 괜찮은 경우도 있지만 이는 그렇지 않을 수 있습니다.