2014-02-08 2 views
0

내 웹 사이트에 PHP을 사용하고 있습니다. 나는 test/show.php?ID=247#about과 같은 URL 값을 가져오고 싶습니다. 다음 URL 값을 얻는 방법 #

제가

<?php 

session_start(); 
$url = $_SERVER['REQUEST_URI']; 

echo $url; 

?> 

의 인쇄 만 test/show.php?ID=247 변수 세션을 사용하는 경우.

나는 #about을 얻지 못하고 있습니다. 이 #about 내 메인 페이지 메뉴를 리디렉션하는 데 사용하고 싶습니다.

아무 방법으로 알려 줄 수 있습니까?

감사합니다.

+0

사용하여 액세스 할 수 있습니다, 당신은 항상 onpageload에 아약스 호출을 통해 변수를 전달할 수 PHP 파일을 만든 다음 어떻게 든 처리 할 수 ​​있습니다. – Armin

+0

이것은 검색 엔진 색인에 저장되지 않았기 때문에 매우 나쁜 생각입니다. 즉, 페이지 # 1, 페이지 # 2, 페이지 # n은 모두 한 페이지 : 페이지로 기록됩니다. 그거 하지마. –

답변

1

, 당신이 아래에 제공된 답변에 자세히 설명하기 위해 자바 스크립트

<script type="text/javascript"> 
    alert(document.location.hash) 
</script> 
2

당신은 할 수 없습니다 - 사용자 정의 클라이언트 측 지원하지 않고는 1

"hash" (or Fragment Identifier)일반적으로 서버에를 전송되지 않습니다.

URI를 나머지와 다르게 부분 식별자 함수 : 즉, 그 처리는 웹 브라우저와 같은 에이전트가이 요청을 웹 서버 가입일 참여 전용 클라이언트 측 .. 인 웹 서버의 웹 리소스에서 에이전트가 URI를 서버로 보냈지 만 은 단편을 보내지 않습니다. 대신 에이전트는 서버가 리소스를 전송할 때까지 기다린 다음 에이전트가 문서 유형 및 단편 값에 따라 리소스를 처리합니다.


1 당신은, 그러나 ... 일반을 예를 들어, 적절한 window.location.hash에서 읽을 형태 submit 이벤트로 자바 스크립트 후크를 사용하여 양식 제출을위한 컨트롤에 값을 밀어 수 디자인은 다음과 같은 이유로 고려해야합니다.

  1. 해시 변경은 일반적으로 클라이언트 쪽 상태 관리 및 "AJAX"탐색에 사용됩니다.
  2. 복잡성이 증가하고 예상치 못한/브라우저 파괴적 동작이 증가합니다.
  3. "정상"링크 또는 탐색 후 첫 페이지로드시 작동하지 않습니다. 당신은 PHP에서 TIS 부분 (해시)에 액세스 할 수 없습니다
+0

감사합니다. 클라이언트에서 맞춤 자바 스크립트를 사용하여이 작업을 수행하는 방법을 알려주십시오. – user3184286