2014-01-21 3 views
0

프로필을 볼 수있는 페이지를 만듭니다 (DB에 저장된 모든 정보 - 내가 선택하지 않은 정보 제외).MySQL Query for Profile보기

오류가 발생하는 것 같다
<?php 
    if($_SESSION['id']) { 
    echo '<h2>Hello, '.$_SESSION['usr'].'!<br>You are registered and logged in!</h2>'; 
       $result = mysql_query("SELECT id,usr,pass,email,dt,priv FROM tz_members WHERE usr = $)SESSION['usr']"); 
       echo "<table border='0'> 
       <tr> 
       <th style='width: 15px'>ID</th> 
       <th style='width: 300px'>Username</th> 
       <th style='width: 100px'>Privileges</th> 
       <th style='width: 200px'>Join Date</th> 
       </tr>"; 

       while($row = mysql_fetch_array($result)) 
       { 
       echo "<tr>"; 
       echo "<td>" . $row['id'] . "</td>"; 
       echo "<td>" . $row['usr'] . "</td>"; 
       echo "<td>" . $row['priv'] . "</td>"; 
       echo "<td>" . $row['dt'] . "</td>"; 
       echo "</tr>"; 
       } 
       echo "</table>"; } 
    else echo '<div class="roundbox"><h2>Please, <a href="login.html">login</a> and come back later!</h2></div>'; 
    ?> 

:

:

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/u594115708/public_html/viewprofile.html on line 66

이 (가) '라인 (66)이'가에 대한 이야기, 더 정확하게하려면이 하나되어

이 코드를

while($row = mysql_fetch_array($result)) 

내가 뭘 잘못하고 있는지 말해 줄래?

+0

'$) SESSION' ='$ _SESSION'? – DanFromGermany

+0

우선, 당신은 비참하게 오래된'mysql_query'를 사용하고 있으며, 제대로 이스케이프 처리하지는 않습니다 (http://bobby-tables.com/php). 두 번째로'$) SESSION' 근처의 질의에')'가 있습니다. 검색어가 실패했습니다. 결과 행 대신 오류가 발생했으며 무시하고 있습니다. – tadman

+0

흠, 좋은 눈, 하! –

답변

0
$result = mysql_query("SELECT id,usr,pass,email,dt,priv FROM tz_members WHERE usr = $)SESSION['usr']"); 
  1. I, 당신은 구문 오류를 방지하기 위해 그

같은 문자열로 배열 변수를 넣을 수 없습니다

  • 생각보다 1 줄을 사용 $_SESSION해야 변수를 적절하게 concat하고 문자열을 따옴표로 묶으십시오 (usr = string string string 작동하지 않으려면 usr = 'string string string'이 필요합니다) :

    $result = mysql_query(" 
        SELECT 
         id,usr,pass,email,dt,priv 
        FROM 
         tz_members 
        WHERE 
         usr = '" . $_SESSION['usr'] . "' 
    "); 
    
  • +0

    아, 알았어, 다음에 $ _SESSION을 추가해 주셔서 감사합니다. 문제가 해결되었습니다 mysql_query 대신 무엇을 사용해야합니까? –

    +0

    코드 포맷을 사용하면 다행스럽게도 서로 옆에 작은 따옴표와 큰 따옴표를 볼 때, 당신은 요점을 가지고있다 : – DanFromGermany

    +0

    당신은 PDO 나 적어도 mysqli_query (mysql_query 대신)를 사용해야한다. – Benedictus