Select top 5 results: PHP/SQL

时间:2015-11-11 15:58:47

标签: php mysql

I'm trying to select the top 5 results, but whenever adding order by votes desc limit 5 to this code:

$req2 = mysql_query('select id, url, name, description, banner, votes 
                     from topsite 
                     order by votes desc 
                     limit '.$first_message .','.$last_message); 
while($dnn2 = mysql_fetch_array($req2))

it won't work. How can I fix it?

3 个答案:

答案 0 :(得分:2)

如果你只想要TOP 5那么你只需要一个像这样的限制器

此外,如果您在查询周围使用双引号,则可以自动展开$variables,这样可以更轻松地进行阅读和调试。

此外,如果您想查看mysql_扩展程序产生的错误,您必须查找它们

$top_5_please = 5;

$req2 = mysql_query("select id, url, name, description, banner, votes 
                     from topsite 
                     order by votes desc 
                     limit $top_5_please"); 

// error check
if ( ! $req2 ) {
    echo mysql_error();
    exit;
}

while($dnn2 = mysql_fetch_array($req2))

最终注释

  

请不要使用mysql_数据库扩展,不推荐使用(在PHP7中永远消失)   特别是如果您只是学习PHP,请花时间学习PDOmysqli_数据库扩展,   and here is some help to decide which to use

答案 1 :(得分:0)

您可以尝试以下操作。另请注意,不推荐使用mysql_ *函数。请改用PDO。

$req2 = mysql_query('select id, url, name, description, banner, votes 
                     from topsite 
                     order by votes desc 
                     limit '.$your_limit .' OFFSET '.$your_offset); 

答案 2 :(得分:0)

[{ "prefix.age": 1, "prefix.name": "Apple" }]

你不能将字符串传递给限制你只能在限制

中使用整数