소스 설명 좀 부탁드리겠습니다.

소스 설명 좀 부탁드리겠습니다.

QA

소스 설명 좀 부탁드리겠습니다.

본문

iframe 이용한 새로고침을 하게 되면서 이것저것 구글링도 하고 고수분들에게 여쭤보기도 하여서 구현을 하였지만 막상 소스 부분에 좀 더 자세히 알고 싶어 이렇게 고수분들에게 양해를 구합니다.

 

 

<?php

echo "var loc1 = top.location.href; top.location = (/ref=/.test(loc1))? loc1.replace(/(ref=)([\w\d\%\_\.\&\=\-\/]+)/, '$1".$lnk1."') : (/\?/.test(loc1))? loc1+'&ref=".$lnk1."' : loc1+'?ref=".$lnk1."'"; 

?>

 

 

 

 

 

이 질문에 댓글 쓰기 :

답변 2

삼항연산을 중첩해서 사용해서 알아보기 어렵네요.

 

echo "

 

//loc1변수에 최상위 윈도우(프레임)의 현재 url 할당

var loc1 = top.location.href;

 

//최상위 프레임 윈도우의 location 변경

top.location =

 

 //url이 ref=을 포함하면 #1을 실행하고 포함하지 않으면 #2를 실행

(/ref=/.test(loc1))

 

//#1 loc1의 ref 쿼리스트링 값을 치환함

? loc1.replace(/(ref=)([\w\d\%\_\.\&\=\-\/]+)/, '$1".$lnk1."')

 

//#2 loc1이 ?로 시작할 경우 #2-1를 실행하고 시작하지 않을 경우 #2-2를 실행

: (/\?/.test(loc1))

 

//#2-1 loc1의 기존 쿼리스트링에 ref 쿼리스트링을 추가

? loc1+'&ref=".$lnk1."'

 

//#2-2 loc1에 ref 쿼리스트링 생성

: loc1+'?ref=".$lnk1." '";

저부분은 php 보다

 

echo 된 결과를 보시는게 편합니다.

 

echo 된 결과를 보시면 자바스크립트 정규표현식을 사용하는게 보이실겁니다.

네 대충은 어떻게 소스가 작동이 되고 흘러가는지는 이해가 되는 부분인데

위의 loc1+'&ref=".$lnk1."' : loc1+'?ref=".$lnk1."'";  이쪽 부분이 잘 이해가 되지않아서요...

글 작성을 할때 어쩔때는 위의 url이 ?ref 로 되는 반면 어쩔때는 &ref로도 되더라구요..

명확한 두개의 기준을 잡기가 어려워서.. 조금 더 자세히 알고싶어서 이런 질문을 올리게 되었습니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 169
QA 내용 검색

회원로그인

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