2010-04-27 4 views
0

페이지가로드 될 때이 페이지의 기초는 세션 값을 설정하고 방문하는 다른 페이지에서이를 지 웁니다. 그런 다음 페이지에서 아약스 호출을 통해 파일을 다운로드 할 수 있습니다. 세션 값이 URL을 통과하는 값과 일치하면 파일을 다운로드 할 수 있습니다. 그렇지 않으면 404 오류가 반환됩니다. 이상한 문제가 발생하여 404를 제거하고 값을 반향 출력하여 설정 값을 확인했습니다.PHP 및 세션에 이상한 문제가 발생했습니다.

다음
$code = $this->_request->getParam('code'); 
    $confirm = $_SESSION['mp3_code']; 
    echo $code."-1-".$confirm; 
    if($code != $confirm) 
     echo $code."-2-".$confirm;//header("HTTP/1.1 404 Not Found"); 
    else 
    { 

가 밖으로 메아리 때 당신이 볼 수 있듯이 아약스 호출 12723430-1-12723430-2-

에서 페이지에 표시되는 것입니다 : 다음 페이지의 코드 맨이다 그들이 처음 존재할 때, 어떻게 든 그들을 비교 한 후에 갑자기 존재하지 않게 된 것처럼 빈 값을 에코 (echos)하는 것을 볼 수 있습니다. 어떤 아이디어?

답변

2

세션을 사용하여 스크립트 상단에 session_start을 반드시 호출해야합니다. 나는 이것이 이것의 경우일지도 모른다라고 생각한다.

코드에 $code$confirm이 표시됩니다. 그러나 $confirm은 세션 데이터를 실제로 검색하지 않기 때문에 (비어있는 이유는 무엇입니까?) 대부분의 경우 TRUE로 평가됩니다.

관련 문제