重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
没大明白什么意思,我理解的是对数据表中的数据进行排序吗,有一个字段记录数据的序号。
创新互联长期为千余家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为酉阳土家族苗族企业提供专业的成都网站制作、成都网站建设,酉阳土家族苗族网站改版等技术服务。拥有10多年丰富建站经验和众多成功案例,为您定制开发。
两种办法:
第一、修改一个数据的序号时,统一设置序号值(+1或-1根据调整的具体序号来定)推荐使用replace
第二。是我常用的方法,在数据表中加一时间字段,来记录调整序号时的时间。调整序号时,只改变被调整的数据的序号。然后记录时间。读取内容时根据序号,时间排序。order by 序号,date desc
楼上说的比较正确
?php
首先链接你的数据库
sql="select
*
from
test
order
by
t
desc
limit
0,100"
$ret=mysql_query($sql,$db);//$db为数据库连接
$zone=1;
while($row=mysql_fetch_array($ret)){
echo
"名次:".$zone.",";
echo
$row['m'];//用户名
echo
$row['t'];//积分
echo
$row['u'];//序号
echo
"br/";
}
?
字符集很简单,但是数据的排序需要通过SQL语句来协助完成,ORDER BY 语句,代码如下:
// 假设你已经成功连接了数据库($mysqli变量假设为连接的资源句柄)
// 通过对象方式设置字符编码
$mysqli - set_charset('utf8');
// 通过函数方式设置字符编码
mysqli_set_charset($mysqli, 'utf8');
// 那么接下来是数据排序的话,需要编写一条SQL查询语句(DESC 倒序排列 | ASC 正序排列)
$sql = "SELECT `字段` FROM `表名` WHERE TRUE ORDER BY `字段` DESC;";
如果还有什么问题,欢迎追问~
从你要输出的结果来看,你这样实现法不太科学,代码不高效,数据量少时还算说得过去,若上万数据的话,服务器会崩溃。建议你在数据库结构上进行改进,对于排序的字段设计可以采用人为可控制的数值,这样你要实现的话,一个sql语句搞定到数组后,你想输出哪种格式都是可以的了。你去参考下那些知名的CMS系统的数据库设计结构,我想你会受到启发的。
记得给分!!!
$i=1
while ( $row = 数据集 ) {
echo $row['id'].','.$row['num'].' ';
if ( $i==10 ) {
$i=0;
echo 'br /'; // html中的换行符
}
$i++;
}