뭐가 틀렸나요 ? > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

뭐가 틀렸나요 ? 정보

뭐가 틀렸나요 ?

본문

만약 sir이 제 사이트라고 가정한다면

사용자가 http://sir.co.kr/test.php인 주소에 머물렀을때 1234라는 글씨를 보이게 하려고
소스를 다음처럼 짰는데 뭐가 문제인지 1234라는 글씨는 안보이네요..

<? if(location.href=='http://sir.co.kr/test.php') echo "http://sir.co.kr/test.php"; ?>


어떤 부분에서 잘못된건가요 ??

댓글 전체

location.href 는 자바스크립트입니다


[PHP] - $_SERVER 속성 정리2011/10/20 12:16 | Posted by Nissan&Nature
$HTTP_REFERER :  이전url
$_SERVER['DOCUMENT_ROOT'] = 현재 사이트가 위치한 서버상의 위치 => /webapp/include
$_SERVER['HTTP_ACCEPT_ENCODING'] = 인코딩 받식 => gzip, deflate
$_SERVER['HTTP_ACCEPT_LANGUAGE'] = 언어 => ko
$_SERVER['HTTP_USER_AGENT'] = 사이트 접속한 사용자 환경 => Mozilla/4.0(compatible; MSIE 6.0; Windows NT 5.1; Q312461; .NET CLR 1.0.3705
$_SERVER['REMOTE_ADDR'] = 사이트 접속한 사용자 IP => xxx.xxx.xxx.xxx
$_SERVER['SCRIPT_FILENAME'] = 실행되고 있는 위치와 파일명 => webapp/include/index.php
$_SERVER['SERVER_NAME'] = 사이트 도메인 => www.naver.com
$_SERVER['SERVER_PORT'] = 사이트가 사용하는 포트 => 80
$_SERVER['SERVER_SOFTWARE'] = 서버의 소프트웨어 환경 => Apache/1.3.23 (Unix) PHP/4.1.2 mod_fastcgi/2.2.10 mod_throttle/3.1.2 mod_ssl/2.8.6 OpenSSL/0.9.6c
$_SERVER['GATEWAY_INTERFACE'] = cGI 정보 => CGI/1.1
$_SERVER['SERVER_PROTOCOL'] = 사용된 서버 프로토콜 => HTTP/1.1
$_SERVER['REQUEST_URI'] = 현재페이지의 주소에서 도메인 제외 =>  /index.php?user=???&name=???
$_SERVER['PHP_SELF'] = 현재페이지의 주소에서 도메인과 넘겨지는 값 제외 =/ index.php
$_SERVER['APPL_PHYSICAL_PATH'] = 현재페이지의 실제 파일 주소 => D:\webapp/
그럼

<? if(location.href=='http://sir.co.kr/test.php') echo "1234"; ?>

이걸

<? if($_SERVER['DOCUMENT_ROOT']=='http://sir.co.kr/test.php') echo "1234"; ?>

이렇게 바꿈ㄴ 되나요 ?
아니요 ㅠㅠ 정확히 했습니다.

<? if($_SERVER['PHP_SELF']=='/test.php') echo "1234"; ?>

여기에서 /test.php를 제가 사용하는게 만약 "dd.php" 라면

<? if($_SERVER['PHP_SELF']=='/dd.php') echo "1234"; ?> 로 바꿔서 했더니
이번에는 아예 1234가 뜨질 않네요..

대신 =='dd.php'에서 = 하나를 뺀


<? if($_SERVER['PHP_SELF']='/dd.php') echo "1234"; ?> 로 교체하면
전 사이트에 1234가 표시되구요 ㅜㅜ
naver.com/bb.php 일때
$_SERVER['PHP_SELF']=='/bb.php'  이구요
naver.com/box/bb.php 면
$_SERVER['PHP_SELF']=='/box/bb.php' 인데
이부분이 문제가 아닐까요 ?

아니면
echo $_SERVER['PHP_SELF']; 이렇게 값을 체크해보세요
스크립트로 해결하셨다고는 하지만 적어봅니다.
견해님의 말씀대로 echo $_SERVER['PHP_SELF'] 로 해당페이지의 경로를 확인하시고
비교하실때 그 경로를 넣으면 될거에요.
혹시나 http://domain/~userid/dd.php 이런식이었던건 아니었을지..
견해님의 말씀대로 /dd.php가 아닌 /dirname/dd.php 이런식으로 되있었수도..
경로에 구애받지않고 dd.php 이름만 체크하는 방법도 있습니다.
(다른 디렉토리에 파일명이 중복되지 않는다는 전제하에..)
if( basename($_SERVER['PHP_SELF'])=="dd.php" ) echo "OK!";
전체 24 |RSS
그누4 질문답변 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT