2011-06-25 75 views
1

試圖實現facebook風格分頁,我一直在收到此錯誤? Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource,警告:mysql_num_rows():提供的參數不是有效的MySQL結果資源

我不完全確定這是什麼意思,但我找不到它從谷歌搜索修復,什麼愚蠢的錯誤突出?下面的代碼:

<?php 
include('functions.php'); 


if(isset($_POST['lastmsg']) &&is_numeric($_POST['lastmsg'])) 
{ 
$lastmsg=$_POST['lastmsg']; 
$query = mysql_query("SELECT * FROM links WHERE id>'$lastmsg' ORDER BY id ASC LIMIT 9 "); 

while($result = mysql_fetch_array($query)) 
{ 
$msg_id=$result['id']; 
$message=$result['link']; 
?> 

<li> <?php echo $message; ?> </li> 
<?php 
} 


?> 
<?php 

if(mysql_num_rows($result)==9){ 
    ?> 
<div class="facebook_style" id="facebook_style"> 
    <a id="<?php echo $message; ?>" href="#" class="load_more" > 
     Show Older Posts <img src="arrow1.png" /></a> </div> 
<?php 
}else { 

    echo ' <div id="facebook_style"> 
    <a id="end" href="#" class="load_more" >No More Posts</a> 
    </div>'; 

} 
} 
?> 
+1

的可能重複的[mysql_fetch_assoc():提供的參數不是在PHP一個有效的MySQL結果資源(http://stackoverflow.com/questions/1858304/mysql-fetch-assoc-supplied-argument-is -not -a-valid-mysql-result-resource-in-ph) –

回答

4

你想通過你的mysql_num_rows()價值$query而不是你$results值。 (或者你可以重構你的代碼命名$query到別的東西像$query_result,並傳遞到mysql_num_rows()。)

mysql_num_rows()需要一個MySQL的結果資源,而你的情況是由mysql_query()返回,您已分配給$query

$result相反,它只是一個代表結果單行的數組。 (因此,一個更好的重構可能重命名$result$row,並重新命名$query$result,然後你就可以離開mysql_num_rows()您的通話原樣。)

+0

奇妙的建議感謝您的幫助! –

0

mysql_num_rows()預期結果的資源(在你的情況$query),而不是連續拉昇從mysql_fetch_array()

if(mysql_num_rows($query)==9) { 
    // etc... 
} 
相關問題