2013-09-06 2 views
0

안녕하세요 로그인 스크립트로 다음을 준비했습니다. (스크립트는 아직 소독되지 않았습니다.)하지만 여기에는 문제가 있습니다. 성공적인 로그인 시도가 이루어지면 loggedUser을 에코해야하지만 정보는 한 번 출력됩니다. 누군가가 나를 잘못 이해하는 데 도움이 될 수 있습니까?PHP의 세션 변수 내용 인쇄하기

코드는 다음과 같습니다.

<?php 
SESSION_start(); 
?> 

<!doctype html> 
<html> 
<head></head> 
    <body> 
    <div> 

<?php 

include ("connect_db/index.php"); 

if(isset($_SESSION['loggedUser'])) 
    { 
    echo '<div>User :'.$_SESSION['loggedUser'].'</div>'; 
    } 
else 
    { 
     echo " 
     <div id='u2'> 
       <form name='form1' method='post' action='''> 
        <table border='1'> 
        <tr> 
         <td>User Name:&nbsp;&nbsp;</td> 
         <td><label for='textfield'></label> 
         <input type='text' name='UnameZoom' id='UnameZoom' class='txss'></td> 
         <td>&nbsp;Password:&nbsp;&nbsp;</td> 
         <td><label for='txss'></label> 
         <input type='password' name='PwordZoom' id='PwordZoom' class='txss'></td> 
         <td>&nbsp;<input type='submit' name='loggedUser' id='loggedUser' class='mylog' value='Login'></td> 
        </tr> 
        </table> 
       </form> 
       <p>&nbsp;</p> 
       <p>&nbsp;</p> 
     </div>";  


    if(isset($_POST['loggedUser'])) 
     { 
      $un = $_POST['UnameZoom']; 
      $pw = $_POST['PwordZoom']; 

      if($un=='' || $pw == '') 
      {echo "Empty fields"; return;} 

      $SQLSz = "SELECT pword FROM users WHERE username='$un'"; 
      $rVz = mysqli_query($db,$SQLSz) or die ("SQL Error!!!"); 
      $roVz = mysqli_fetch_array($rVz); 

      if($pw == $roVz['pword']) 
      { 
       $result = mysqli_query($db,"SELECT Lname AS Lna FROM users WHERE username='$un'"); 
       $row11 = mysqli_fetch_assoc($result); 
       $sum = $row11['Lna']; 
       $_SESSION['loggedUser'] = $sum; 
       echo $_SESSION['loggedUser']; 

      } 
      else 
      { 
      echo "No user found"; 
      } 
     }  
    } 
?> 
<div></body></html> 
+5

'SESSION_start();'는'session_start();'이어야합니다. –

+0

처음에는 else 부분을 확인하십시오. 실제로 $ sum에 값을 얻고 있습니까? – Kalpit

답변

1

변수에 문제가 있다고 생각합니다. 배열 일 수도 있지만 에코 배열은 없습니다. var_dump로 변수를 덤프 해보십시오.

+0

그러나 배열을 에코하려고하면 브라우저에서 '배열'만 인쇄됩니다 ..하지만 var_dump는 좋은 제안입니다 –

0

으로는 이미 언급 한 - 예를 들어 - SESSION_start은() 세션 배열을 표시하기위한 또 다른 문을 시도 session_start()

한다 :

echo '<pre>'; 
print_r($_SESSION); 
echo '</pre'>; 

이는 좋은 읽을 수있는 방법으로 당신에게 모든 세션 키를 표시합니다