2014-04-04 6 views
0

나는 다음과 같은 코드를 가지고 :PHP는 MySQL의 코드를 표시하지 않습니다

if(isset($_SESSION['user_id'])) { $query = "SELECT * FROM watchlist,movies WHERE watchlist.page=movies.id AND userid=". $_SESSION['user_id']; 
    $result = mysql_query($query) or die('Query failed: ' . mysql_error()); 

    while($row = mysql_fetch_assoc($result)) 
     { 
     echo '<div id="watchlist">'; 
      echo '<a href="watch.php?id='.$row['page'].'"><img src="http://nocmmnt.com/posters/'.$row['imdb_id'].'.jpg" height="217" width="154"></a><br>'; 
      echo '<span style="float:right;"><a href="delete.php?wid='.$row['wid'].'"><img src="image/close_delete.png" width="20"></a></span><a href="watch.php?id='.$row['page'].'">'.$row['title'].'</a><br>'; 
      echo "</div>"; 
     } 
    elseif(empty($row)) { 
     echo "You dont have any movies in your watchlist!"; 
    } 

내 문제가 비어 내가 그걸 어떻게 해결할 수 그 때이 나던 에코입니다을?

+0

당신 결과를 찾지 못하면 에코를 원하십니까? 그렇다면 인쇄 할 내용은 무엇입니까? 빈 행을 검사하려면 mysql_num_rows를 사용하십시오. –

+0

둥근 닫는 브래킷이 누락되었습니다. 먼저 해결하십시오. – blue

+1

'elseif'에 대한 'if'는 어디에 있습니까? –

답변

0

것을보십시오 :

잘못된 조건부 구조의
if(mysql_num_rows($result) == 0) 
    { echo "You dont have any movies in your watchlist!"; } 
    else{ 
    while($row = mysql_fetch_assoc($result)) 
    { 
    echo '<div id="watchlist">'; 
     echo '<a href="watch.php?id='.$row['page'].'"><img src="http://nocmmnt.com/posters/'.$row['imdb_id'].'.jpg" height="217" width="154"></a><br>'; 
     echo '<span style="float:right;"><a href="delete.php?wid='.$row['wid'].'"><img src="image/close_delete.png" width="20"></a></span><a href="watch.php?id='.$row['page'].'">'.$row['title'].'</a><br>'; 
     echo "</div>"; 
    } 

    } 
+0

대단히 감사합니다 :) –

0

당신은 0 행이나 그 이상이 있는지 확인하기 위해

mysql_num_rows($result) 

를 사용해야합니다.

0

empty($row)을 확인하는 것은 생각하는대로 수행되지 않습니다. 확인하고자하는 것은 mysql_num_rows($result) == 0입니다.

사이드 노트 - mysql은 (는) mysqli으로 대체됩니다.

1
elseif(empty($row)) { 

, elseifif 블록 또는 다른 elseif 후에 와야합니다.

어떻게 해당 코드가 구문 분석 오류를 생성하지 못합니까? 다른 사람이 언급 한 바와 같이

Parse error: syntax error, unexpected T_ELSEIF on line 13 

또한, 단순히 mysqli 대신 MySQL을 사용하려고 또한, 0

if(mysql_num_rows($result)==0) 
0

당신은 다음과 같이 코드를 수정할 수있는 행 수를 확인

<?php 
if(isset($_SESSION['user_id'])) { $query = "SELECT * FROM watchlist,movies WHERE watchlist.page=movies.id AND userid=". $_SESSION['user_id']; 
    $result = mysql_query($query) or die('Query failed: ' . mysql_error()); 

    $count = mysql_num_rows($result); 

    if($count > 0) 
    { 
     while($row = mysql_fetch_assoc($result)) 
     { 
      echo '<div id="watchlist">'; 
      echo '<a href="watch.php?id='.$row['page'].'"><img src="http://nocmmnt.com/posters/'.$row['imdb_id'].'.jpg" height="217" width="154"></a><br>'; 
      echo '<span style="float:right;"><a href="delete.php?wid='.$row['wid'].'"><img src="image/close_delete.png" width="20"></a></span><a href="watch.php?id='.$row['page'].'">'.$row['title'].'</a><br>'; 
      echo "</div>"; 
     } 
    } 
    else { 
     echo "You dont have any movies in your watchlist!"; 
    } 
} 
?>