When I use this:
$res = "(SELECT users.username, old_news.postedby, SUM(old_news.views) AS views FROM users LEFT JOIN old_news ON users.id = old_news.postedby GROUP BY users.username)
UNION (SELECT users.username, new_news.postedby, SUM(new_news.views) AS views FROM users LEFT JOIN new_news ON users.id = new_news.postedby GROUP BY users.username)
ORDER BY views DESC";
$query = mysql_query($res);
while($row = mysql_fetch_array($query) ) {
$username = $row["username"];
$views = $row["views"];
echo "<tr><td>$username</td><td align=right>$views</td></tr>";
I get this result:
John 130
Mark 110
Samy 80
Andy 65
Mark 70
Andy 15
Samy 10
But when I try to group the result like this:
Mark 180
John 130
Samy 90
Andy 80
By using this code:
$res = "(SELECT users.username, old_news.postedby, SUM(old_news.views) AS views FROM users LEFT JOIN old_news ON users.id = old_news.postedby GROUP BY users.username)
UNION (SELECT users.username, new_news.postedby, SUM(new_news.views) AS views FROM users LEFT JOIN new_news ON users.id = new_news.postedby GROUP BY users.username)
GROUP BY users.username ORDER BY views DESC";
$query = mysql_query($res);
while($row = mysql_fetch_array($query) ) {
$username = $row["username"];
$views = $row["views"];
echo "<tr><td>$username</td><td align=right>$views</td></tr>";
I get this error:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in d:\Server\Apache\htdocs\newsphp\stat.php on line 50
Any idea how to fix this?