2014-05-25 4 views
1

내 웹 사이트에 양식을 올렸습니다. 제출하면 사람이 "감사 페이지"으로 리디렉션되지만, 누군가가 "고맙습니다 페이지"에 직접 액세스하면 여전히 내가 배치 한 물건을 보여줍니다. 감사합니다. 양식 및 모든 자료 제출). 누군가에 직접 접속하려했을 때 액세스 할 수 없으면 으로 지정합니다. 누군가가 양식을 제출 한 경우에만 표시되어야합니다 (양식 페이지에서 재 지정). 양식 페이지에서만 리디렉션 된 경우에만 페이지에만 액세스 할 수 있도록 허용하는 방법이 있습니까?
특정 페이지에서 리디렉션 된 경우에만 액세스를 허용 하시겠습니까?

답변

2

쉽게 thankyou.php 페이지에서 참조 페이지를 확인할 수 있습니다 (감사합니다 페이지가 PHP 파일입니다).

<?php 
    if ($_SERVER['HTTP_REFERER'] == "http://yoursite.com/form.php") { 
     // continue 
    } else { 
     header("Location: http://yoursite.com/form.php"); 
     exit(); //Stop running the script 
     // go to form page again. 
    } 
?> 

또 다른 방법은 양식 페이지에 숨겨진 양식 값을 입력 한 다음 값이 존재하는지 확인하는 것입니다. (그러나 사용자는 여전히 코드를보고 숨겨진 값을 볼 수 있습니다). 페이지에

+0

감사 해! 매력처럼 일했다. – Saibbyweb

0

는 사용자가 당신에게 감사에 다음 양식을 페이지를

$_SESSION['submitted_form'] = True; 

을 제출하면

if (!isset($_SESSION['submitted_form'])) { 
    // deny access 
} else { 
    // show real page 
} 
관련 문제