2012-09-22 2 views
0

나는 사용자가 좋아하는 영화 이름을 가져 와서 다시 인쇄하는 프로그램을 만들려고합니다. 기본 즐겨 찾기는 Godfather으로 설정됩니다.

또한 세션 변수를 기반으로 HIT 카운터를 첨부했지만 작동하지 않습니다. 페이지가로드 될 때마다 0을 표시합니다.

<?php 
session_start(); 

if(!isset($_SESSION['count'])) 
    $_SESSION['count'] = 0; 
else 
    $_SESSION['count']++; 

if (!isset($_SESSION['movie'])) 
     $_SESSION['movie'] = "THE GODFATHER"; 

if(isset($_POST['submit'])) 
    $_SESSION['movie'] = $_REQUEST['moviename']; 
?> 

<form method='POST' action="index.php"> 
Please Enter your Favourite Movie 
<input type="text" name='moviename' /> 
<input type="submit" name='submit' value='set movie' /> 
</form> 

<br /><br /> 
Your Current Favourite Movie is <?php echo "called ", $_SESSION['movie'] ,"."; ?> 
<br /><br /> 
<?php echo "You Have Viewed this page ", $_SESSION['count'], " times."; ?> 

당신은 상관없이 페이지가로드 된 횟수, YOU HAVE VIEWED THIS PAGE 0 TIMES을 얻을 것이다 : 여기 내 코드입니다.

+1

이 유무입니다 ' Ozerich

+1

방금 ​​파일에 코드를 복사하여 붙여 넣은 다음 로컬 호스트로 실행하면 정상적으로 작동합니다. 문제는이 코드로해서는 안됩니다. –

+0

브라우저를 닫으면 세션이 손실됩니다. 여전히 증가하지 않는 페이지 카운터를 새로 고칠 때? –

답변

3

echo session_id();을 시도하고 변경되지 않았는지 확인하십시오.

변경된 경우 제대로 세션을 구성하지 않았습니다. 관련 php.ini 설정을 확인하십시오. 특히 저장 경로가 있는지 확인하십시오.

  • 아마, 첫번째 라인에 대한 <?php을 파일을 확인, 어쩌면 BOM와 UTF 이 파일 인코딩을 확인 BOM없이 UTF-8로 파일을 변환

  • +1

    이것은. 세션이 클라이언트 측에서 제대로 초기화되지 않은 것처럼 들립니다. 즉, 쿠키를 설정할 수 없거나 다른 것을 설정할 수 없습니다. –

    +0

    나는 이것을했는데, 나는 그 session_id(); 변화하고 있습니다 ... 어떻게 수정합니까? –

    0
    1. 는 1 라인에 더
    +0

    저는 UTF-8 만 사용하고 있습니다. –