0

質問があります。チャット/IMのWebサイトを作成していて、ユーザープロファイルページを作成していました。そのユーザーの投稿数を表示したかったのです。

以前に発生したもう1つの問題は、特定の値を呼び出すと、「リソース#1」タイプの文字列が返されることでした。しかし、私はそれを使用して動作しました

$totalposts=mysql_query("SELECT * FROM `posts` WHERE Username='" . $username . "'");
$totalposts = mysql_fetch_row($totalposts);
$totalposts = $totalposts[0];

ただし、これは最新の投稿の最後のpostIDを返すだけです。mysql_num_rowsが機能すると思いました。しかし、このコードはエラーを返します(数字の例):

29: $totalposts=mysql_query("SELECT * FROM `posts` WHERE Username='" . $username . "'");
30: $totalposts = mysql_num_rows($totalposts);
31: $totalposts =mysql_fetch_row($totalposts);
32: $totalposts = $totalposts[0];

これはこのエラーを返します:

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in       /home/a9091503/public_html/im/user.php on line 31

みんなありがとう。:)私はあなたがこれを理解できることを願っています。:D

4

3 に答える 3

1
$res = mysql_query("SELECT COUNT(*) AS `count` FROM `posts` WHERE Username='$username'");
$row = mysql_fetch_assoc($res);
$totalposts = $row['count'];
于 2012-06-27T15:03:33.577 に答える
0
$posts=mysql_query("SELECT * FROM `posts` WHERE Username='" . $username . "'");
$totalposts = mysql_num_rows($posts);
print "total posts by user = ".$totalposts

コメントを表示したり、コメントの数に基づいて他のアクションを実行したりする場合に、このクエリを実行できます。(これにより、行数の1つとコンテンツの1つなど、複数のクエリが削減されます)

コメントの数だけに関心がある場合は、上記の回答の1つですでに提案されているように、次のクエリを使用してください。

SELECT count(*) FROM `posts` WHERE Username='$username'
于 2012-06-27T15:02:43.877 に答える
0

これを試して;

$totalposts=mysql_query("SELECT COUNT(postID) FROM `posts` WHERE Username='" . $username . "'"); 

また

$totalposts=mysql_query("SELECT COUNT(*) FROM `posts` WHERE Username='" . $username . "'"); 
$result= mysql_query($totalpost);
$totalposts = mysql_result($result, 0, 0) // return first row and first col
echo $totalpost;
于 2012-06-27T15:12:22.400 に答える