2012-11-23 6 views
-1

이 관리자 페이지입니다, 빈 페이지를 내가 한 사용자 만 데이터를 표시하려고 선택한 사용자에 대한 모든 데이터를 표시 할 수 있지만 얻어야한다 여기에 무슨 문제가 있을까요?표시 할 수 없습니다 하나의 사용자 데이터가

+1

SQL 주입을 정리하려면 PDO 준비 문을 사용하십시오. http://ca3.php.net/manual/en/pdo.prepare.php –

+0

mysql을 사용하지 마십시오. 대신 PDO 또는 mysqli를 사용하십시오. 또한 게시물을 통해 "사용자"var을 어떻게 보냅니 까? 양식을 사용하고 있습니까? 시도 var_dump ($ _ POST); 그것이 실제로 설정되었는지 확인하십시오. –

+0

Lol 잠시 후에 다른 페이지로 리디렉션한다는 사실을 알고 있습니까? –

답변

0

먼저 시도해야합니다 : echo "ROW COUNT :".mysql_num_rows ($ query); 또는 var_dump ($ user_data)를 throw 할 수 있습니다.

0

다음과 같이 시도해보십시오. 다른 사람들이 말했듯이 PDO을 사용하는 것이 훨씬 더 좋겠지 만 적어도 mysql_real_escape_string()을 사용하면 데이터를 쿼리에 직접 입력하는 것보다 안전합니다.

<?php 
    if (empty($_POST['user']) || $_POST['user'] == 'none') { 
     exit('No user was selected set.'); 
    } 

    $user = (string) mysql_real_escape_string($_POST['user']); 

    $sql = " 
     SELECT user, email, added, admin, type 
     FROM User 
     WHERE user = '%s'"; 
    $query_string = sprintf($sql, $user); 

    $result = mysql_query($query_string); 

    if (empty($result)) { 
     exit('Failed to retrieve user data.'); 
    } 

    echo ' 
     <table>'; 
    while ($user = mysql_fetch_assoc($result)) 
    { 
     echo ' 
      <tr> 
       <td>', $user['user'], '</td> 
       <td>', $user['email'], '</td> 
       <td>', $user['added'], '</td> 
       <td>', $user['admin'], '</td> 
       <td>', $user['type'], '</td> 
      </tr>'; 
    } 
    echo ' 
     </table>'; 
관련 문제