2014-01-29 4 views
-2

헤더 함수를 사용한 후에 PHP 변수에 액세스하는 데 약간의 문제가 있습니다. 폼에서 POSTED 변수 인 patient_id가 있습니다. 그런 다음 레코드가 데이터베이스에 있는지 확인하는 데 사용됩니다. 그렇다면 세션을 만들고 헤더 기능을 사용하여 페이지를 맨 위로 리디렉션합니다. 그런 다음 세션을 작성해야하는 if 문에서 코드를 실행합니다. 변수 $ patient_id에 액세스 할 수 있습니까 ?? 감사합니다헤더 함수를 호출 한 후 PHP 변수에 액세스

<?php 

if(isset($_SESSION['patient'])){ 
    echo($patient_id); 
}else{ 
    $patient_id = $_POST['patient_id']; 
    $query = "SELECT * FROM `patient` WHERE `patient_id`='$patient_id'"; 
    $query_run = mysql_query($query); 
    $num = mysql_num_rows($query_run); 

    if($num == 1){ 
    $_SESSION['patient'] = true; 
    header('Location:trial.php'); 
    exit(); 
}else{ 


} 
?> 
+2

당신은'에코 ($의 patient_id)에 노력하고는, 당신이 그것을 할당하기 전에'... – alfasin

+1

또한, 당신은'else' 문이 또 다른 하나를 수행 할 수 없습니다. – George

답변

0

mysql_은 더 이상 사용되지 않아야하므로 mysqli 나 더 나은 PDO를 사용해야합니다. 그러나 이것이 당신의 문제를 해결할 것입니다.

<?php 

      if(isset($_SESSION['patient'])){ 

       echo($_SESSION['patient_id']); 

      }else{ 

       $patient_id = $_POST['patient_id']; 
       $query = "SELECT * FROM `patient` WHERE `patient_id`='$patient_id'"; 
       $query_run = mysql_query($query); 

       while ($row = mysql_fetch_assoc($result)) 
       { 

        $_SESSION['patient'] = true; 
        $_SESSION['patient_id'] = $row['patient_id']; 
        header('Location:trial.php'); 

       } 
      } 
?> 
관련 문제