如果单击,我如何按列标题排序,然后再次单击时按相反顺序排序?

时间:2009-06-08 23:30:24

标签: php

我有一个动态引入PHP的数据表。我有两个列标题 - 名称和价格

我正在寻找一个PHP脚本,它允许我通过单击其中一个Column标题对数据进行排序,然后当用户再次单击它时,我希望它以相反的顺序对数据进行排序。或者,如果用户单击其他列标题,它将按该列对其进行排序。

有谁知道我在哪里可以找到这样做的PHP脚本?

1 个答案:

答案 0 :(得分:2)

你可能不需要任何太特别的东西来做这件事。只需usort()数组检查$ _GET ['sort'] =='price'等是否对数组进行排序,并在表中显示数组。

在表格标题处,提供

链接
<a href="?sort=price">Price</a>

or

<a href="script_name.php?some_params ... &sort=price">Price</a>

您还可以使用不同的SQL语句,看它是按价格排序。

反过来,你可以检查$ _GET ['reverse'] =='true'是否正确,如果是这样的话。然后你还必须改变链接,以便它链接到另一个参数“reverse = false”。

您还可以查看natsort(),这有时是一种更合理的数据排序方式。

另一种方法是使用Javascript,但显然它只适用于没有关闭Javascript的用户。