2010-08-18 6 views
0

이 문제를 파악하는 데 어려움이 있습니다. 가능한지 확실치 않습니다. 도움을 주시면 감사하겠습니다 !!한 사이트에서 다른 사이트로 변수를 전달하십시오.

사이트 A에

, 내가 사이트 A의 링크를 클릭하면 사이트 B로 리디렉션 링크 (제휴 형 링크)를 가지고, 내가 리디렉션이 스크립트를 사용 ..

header('HTTP/1.1 301 Moved Permanently'); 
header('Location: ' . $url); 
exit; 

은 $ URL var은 사이트의 "A"URL입니다. URL에서 쿼리 문자열을 사용하지 않고 사이트 B로 리디렉션 스크립트의 변수를 전달하는 방법 (예 : http://www.siteB.com/?var_to_pass=something)

또한 두 사이트가 다른 서버에 있으므로 세션이 작동하는지 확실하지 않습니다. 그러나 사이트 사이에는 필자가 필요한 것을 얻기 위해 누군가를 사용할 수 있기를 희망하는 스크립트가 있습니다.

답변

2

리디렉션을 통해 사이트간에 데이터를 전달하는 방법은 쿼리 바를 통한 URL에서 수행하는 것과 같습니다. POST를 통해 브라우저를 리디렉션 할 수 없으므로 GET 만 사용할 수 있습니다.

+1

확실히 ... 필요한 것은 자바 스크립트입니다. 그러면 게시 요청을 발행 할 자바 스크립트를 렌더링하십시오. – ircmaxell

+0

사실,하지만 평소와 같이 자바 스크립트가 사용 설정되지 않은 경우 어떻게해야합니까? –

+0

@ircmaxell 사용자가 JS를 가지고 있지 않은 경우에 실패하는 험난한 해킹 아이디어 – meagar

1

POST와 자바 스크립트로 할 수 있지만 꽤 좋지는 않습니다. 본문 onLoad 이벤트에서 제출 한 양식 만 있으면됩니다.

사람들로부터 변수를 숨기시겠습니까? 이 작업을 수행 할 수 있습니다

www.sitea.com -> (redirect) -> www.siteb.com/incoming?var=blah 
# then 
www.siteb.com/incoming?var=blah -> (redirect) -> www.siteb.com/ 

너무 빨리 사용자도 표시되지 않으며 최종 결과는 사이트 B는 테아에서 변수를 가져 와서 사용자가 깨끗한 찾고 URL에 끝나는 것을 것을 발생합니다.

+0

그건 깔끔한거야! 고마워 :)하지만 사이트 B가 리다이렉트하면 '잠깐만'저장할 수 있을까? –

+0

들어오는 페이지 (세션 등)에 수동으로 저장해야합니다. 그런 식으로 사이트 b는 필요할 때마다 사이트 b에 액세스 할 수 있습니다. –

0

또는 curl (위의 솔루션을 리디렉션해야 할 경우 리디렉션되지 않음)을 사용하고 서버간에 변수를 보내고받을 수 있습니다. 변수를 어딘가에 저장하십시오. (데이터베이스) ..

관련 문제