2012-08-27 4 views
-1

이 난에 오전 상황 :작업 (헤더())

나는 현재 3 페이지가 있습니다, people.php

  • 을하는 사용자가 관심있는 사용자를 선택할 수있는 페이지이며 사용자가 관심있는 사용자를 클릭 할 때 선택할 수 있습니다. 각각의 사람은 follow.php에 링크되어 있지만, 변수 username은 누를 때마다 다른 값으로 링크에 게시됩니다. 즉, anderson cooper가 선택되면, 트리거되는 링크는 follow.php? username = andersoncooper;

  • follow.php. 사용자가 따라 가기를 원하는 사람을 선택할 때 실행되는 페이지이며,이 페이지는 그 사람을지나 가게됩니다. 이 페이지는 사용자가 로그인 한 경우에만 작동합니다. 페이지는 변수 username ($username = $_GET['username'])을 가져 오며,이 값은 선택한 링크에 따라 다릅니다. 다음으로이 사용자 이름 변수는 사용자 다음에 오는 함수에 넣어집니다. 사용자가 트위터에 로그인하고 응용 프로그램에 권한을 부여 할 수있는 페이지입니다

  • Login.php. follow.php의 맨 위에 사용자가 로그인하지 않았다면 여기에 코드를 보내라는 코드가 있습니다. login.php가 완료되고 사용자가 완료되면 follow.php로 다시 전송됩니다. 유일한 문제는 변수 username이 더 이상 정의되지 않는다는 것입니다. 사용자가 로그인하지 않아도 로그인 페이지로 리디렉션되기 전에 변수 ($username = $_GET['username'])를 설정하려고 시도했지만 작동하지 않습니다. 리디렉션을 위해, 나는 이것을 사용하고 있습니다 :

if(empty($_SESSION['oauth_token'])){ 
    //not signed in 
    die(header('Location: twitter_login.php')) ; 
} 

나는없이이 스크립트를 사용하여 시도뿐만 아니라 죽고 여전히 작동하지 않았다. follow.php 코드의 나머지 부분은이 검사 다음에 나옵니다. 나는 내 문제를 잘 설명했으면 좋겠다. 이 스크립트는 login.php가 결코 호출되지 않고 follow.php를 떠나지 않기 때문에 사용자가 이미 로그인 한 경우 완벽하게 작동합니다. 하지만 페이지를 떠날 때 [[사용자 이름]]을 (를) 얻을 수 없습니다. 누구에게이 해결책이 무엇인지 압니까? 고맙습니다!!

+0

die()는 일반적으로 실패를 나타내는 데 사용됩니다. 대신 exit()를 사용하여 의도적으로 스크립트를 종료한다는 것을 암시하십시오. –

답변

0

검색어 문자열을 위치 헤더에 추가해야합니다 (예 :

die(header("Location: mypage.php?username=".$_GET['username'])); 
+0

작동하지 않는 것 같은데, 나는이 오류를 다시 받았다. Notice : 정의되지 않은 변수 : 사용자 이름 – justlivinglife

+0

코드의 어느 곳에서나'group'에 대한 참조를 볼 수는 없지만 더 많은'$ _GET' 변수를 전달해야 할 수도 있습니다. ''Location : mypage.php? "http_build_query ($ _ GET)' –

+0

죄송합니다, 사용자 이름은 아직 정의되지 않았습니다 ... 코드에서 다른 변수를 사용하고 있습니다 – justlivinglife

0

사용자 이름을 _SESSION에 저장하고 그런 식으로 참조하십시오.

+0

물론 이것은 실제로 세션이 있다고 가정합니다. 사용하도록 설정되었습니다. –