十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
?
成都创新互联公司专注于夏津网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供夏津营销型网站建设,夏津网站制作、夏津网页设计、夏津网站官网定制、小程序定制开发服务,打造夏津网络公司原创品牌,更为您提供夏津网站排名全网营销落地服务。
$movie_score=mysql_query("SELECT movie_score FROM movie");
$arr= mysql_fetch_array($movie_score);
function insert_sort($arr)
{
$count = count($arr);
for($i=1; $i$count; $i++)
{
$tmp = $arr[$i];
$j = $i - 1;
while(($arr[$j] $tmp)($j=0)){
$arr[$j+1] = $arr[$j];
$arr[$j] = $tmp;
$j--;
}
}
return $arr;
}
insert_sort($arr);
$out_score=mysql_query("SELECT * FROM movie ");
$arr_score= mysql_fetch_array($out_score);
function out_name_and_score($arr_score)
{
for($i=0;$i50;$i++)
{
if($arr_score["movie_score"]=$arr[$i])
echo $arr_score["movie_chname"];
echo " ".$arr_score["movie_score"];
echo "br /";
}
}
out_name_and_score($arr_score);
?
这个如果想要性能的话,就用下面的sql语句实现:
select orderNo from (select (@rowNum:=@rowNum+1) orderNo , xuehao,cishu from record,(Select (@rowNum :=0) ) b
order by cishu desc)t where t.xuehao=112
然后php获得这条结果数组,取第一个元素即是排序
如果对这个sql语句有疑问,不明白,可以使用一个比较耗费性能的方法:
select xuehao,cishu from record order by cishu desc
执行这条语句,获得一个数组$res
遍历前设置一个记录排序的标识 $seq=1;
for(...){
$xuehao=$res['xuehao'];//把第seq 个位置的学号拿出来,跟想要的学号比
if($xuehao==112){
break;
}
$seq++;
}
//如果 这个排序标识比结果集数组大小还大,说明没这个学号的记录,否则,就是这个学号打卡次数的排序。
$seq就是排序
$order = isset($_GET['order']) ($_GET['order'] == 'asc') ? 'asc' : 'desc';
接收order参数用于查询
$order_hit = $order == 'asc' ? 'desc' : 'asc';
echo 'a href="xxx.php?order='.$order_hit.'"... .../a';
大概就是这样。
count应该是int类型的字段吧,如果你用count排序不用写where= 就写select * from tag order by count desc limit 100这个就是从大到小的前100个
select * from tag order by count asc limit 100就是从小到大的前100个