yolop Posted November 30, 2008 Share Posted November 30, 2008 $select_winner = mysql_query("SELECT max(vote), userid,text FROM poll order by vote "); $read_winner = mysql_fetch_array($select_winner); $text = $read_winner['text']; echo $text; but error Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in why?? Quote Link to comment https://forums.phpfreaks.com/topic/134867-i-want-the-max/ Share on other sites More sharing options...
Mchl Posted November 30, 2008 Share Posted November 30, 2008 But what you want to get? 'text' is mysql reserved word. You should enclose it in `` in your queries Change $select_winner = mysql_query("SELECT max(vote), userid,text FROM poll order by vote "); to $select_winner = mysql_query("SELECT max(vote), userid,`text` FROM poll order by vote ") or die(mysql_error()); this will show any other mysql error messages. Quote Link to comment https://forums.phpfreaks.com/topic/134867-i-want-the-max/#findComment-702232 Share on other sites More sharing options...
xtopolis Posted December 1, 2008 Share Posted December 1, 2008 Using MAX() in a query requires the GROUP BY clause. http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html So you could group by .. userid maybe? Don't know what result set you're aiming for. $select_winner = mysql_query("SELECT MAX(vote), userid, `text` FROM poll GROUP BY userid ORDER BY vote"); Also, like Mchl said, text is a reserved word, so I would rename the column. Quote Link to comment https://forums.phpfreaks.com/topic/134867-i-want-the-max/#findComment-702716 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.