2011-06-25 11 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_resultのような何か他のものに$queryに名前を付けてmysql_num_rows()にそれを渡すためにあなたのコードをリファクタリングしたいと思います。)

mysql_num_rows()はあなたのケースであなたが$queryに割り当てたmysql_query()、によって返されたMySQLの結果リソースを、期待してい。対照的に、結果の単一の行を表す配列にすぎません。 (だから、より良いリファクタリングがあるとして、あなたはmysql_num_rows()にお電話を残すことができます。$row$resultの名前を変更し、$result$queryの名前を変更するかもしれません。)

+0

助けを借りて素晴らしいアドバイスありがとう! –

0

mysql_num_rows()は(あなたのケース$queryで)結果リソースではなく、行引かを期待mysql_fetch_array()から。

if(mysql_num_rows($query)==9) { 
    // etc... 
} 
関連する問題