搜外网>搜外问答>问答页面

php用while输出时候,序号问题怎么解决呢? 推荐热议

<p>我的代码</p><p>$sql = "select  from wz where wz_sh='已审核' order by wz_id desc limit $one,$m ";
</p><p>$sql = mysql_query($sql,$config);
</p><p>while($wz=mysql_fetch_array($sql)) 
</p><p>{ 
</p><p>              echo '
</p><p>   
</p><p> <li><span class="s1">'.$wz['0'].'</span><span class="s3"><a href="wz.php?id='.$wz['wz_id'].'" target="_blank">'.$wz['wz_name'].'</a></span><span class="s4">'.$wz['wz_time'].'</span><span class="s5">'.$wz['wz_tj'].'</span></li>
</p><p>';
</p><p>}

</p><p>                  ?></p><p><br></p><p>如图,序号是从大到小的,怎么处理这个问题呢?求解啊。如果把$sql = "select 
 from wz where wz_sh='已审核' order by wz_id asc limit $one,$m ";的话,数据又不是按插入数据库的时间降序排列了。简单的说,就是数据需要降序,但是序号需要升序。</p><p><br></p>

追加问题
    3 人参与回答
最佳回答
文煞
文煞 · PHP

自己研究出来了。

在while前加$i=1;

$t=51;

把while修改成while($wz=MySQL_fetch_array($sql) and $i < $t) 


在echo 语句内,相应位置输出$i,双引号和单引号对这个变量的写法是有区别的。


在echo语句结束后就是(;这个符号后面加上$i++;)。


把方法写出来,是为了给需要的同学。具体说明


刘 勇
刘 勇 · 现货界网络部负责人
文煞 等 1 人赞同该回答

$sql = "select * from wz where `wz_sh`='已审核' order by wz_id desc limit $one,$m ";

$sql = "select * from wz where `wz_sh`='已审核'   order by create_time desc,wz_id asc limit $one,$m ";

试试吧  换个CMS吧  你这种混编的写法你不嫌看着头疼  至少用标签调用吧